72
87
103
119
136
154
171
187
200
212
224
231
237
239
238
235
228
219
208
194
180
164
146
129
112
95
79
66
55
45
38
34
31
34
39
46
56
67
81
97
114
131
148
165
182
195
208
219
229
235
239
239
236
231
222
211
199
185
169
152
134
118
101
84
70
59
48
41
35
32
33
37
44
53
63
76
92
108
125
142
159
176
192
204
216
226
233
237
238
237
233
225
216
203
190
175
158
140
123
106
90
74
62
51
42
36
33
33
35
41
49
60
71
86
103
120
136
153
171
186
200
213
224
231
236
239
238
235
228
219
207
194
180
163
146
128
112
95
80
65
55
45
38
34
32
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
229
234
238
238
236
231
222
211
198
185
169
152
134
118
101
85
70
59
47
40
35
32
33
36
43
52
63
76
91
108
125
142
159
175
192
204
215
226
233
237
238
237
233
225
215
203
190
175
157
140
124
106
90
74
62
51
43
36
33
33
35
41
49
60
71
87
103
119
136
153
170
186
200
212
224
231
236
238
238
235
228
219
207
194
180
163
146
129
112
94
79
65
55
45
38
34
31
34
38
46
56
67
81
97
113
130
147
165
181
195
208
219
228
234
238
238
236
230
222
211
199
185
169
152
134
118
101
84
70
58
48
40
34
33
34
35
41
53
65
76
92
108
124
141
158
176
192
203
214
226
235
238
237
238
234
225
214
203
192
174
156
140
124
106
89
75
63
51
43
36
33
32
35
39
50
63
69
83
102
118
135
155
171
186
201
212
223
232
235
238
239
234
226
218
208
195
179
162
147
129
111
96
81
65
54
45
38
34
32
34
38
46
56
67
81
97
114
130
147
165
181
195
208
219
228
234
238
239
236
231
222
211
199
185
169
152
134
118
101
84
70
59
48
40
35
32
33
36
43
52
63
77
91
107
124
142
159
176
191
204
216
226
233
237
239
237
233
226
215
203
190
174
158
140
123
106
90
75
62
51
42
36
33
33
35
41
49
60
72
86
102
120
137
154
170
186
200
213
224
231
236
239
238
235
228
219
208
194
180
163
146
128
112
94
79
66
55
45
38
34
33
34
39
46
56
67
81
97
114
130
148
165
181
195
208
220
228
235
238
238
236
230
222
211
199
185
169
152
134
118
101
84
70
58
48
40
35
33
34
37
43
53
63
76
92
109
125
142
159
176
192
204
216
226
233
238
239
238
233
226
216
203
190
175
158
140
124
106
89
75
62
51
43
36
33
33
35
41
49
60
72
86
102
120
136
154
171
187
200
212
222
231
236
239
238
234
228
219
208
194
180
164
146
128
112
95
80
66
55
46
38
34
33
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
228
234
238
239
236
230
222
212
199
185
169
152
134
118
101
84
70
59
48
40
35
32
34
37
44
53
63
76
91
108
125
142
159
176
191
204
216
226
233
237
239
237
233
226
216
203
191
175
158
140
124
107
90
75
63
52
42
36
33
33
35
41
49
60
71
86
102
119
135
153
170
186
200
212
223
231
236
239
238
235
228
219
208
194
180
164
146
129
112
95
80
66
55
45
38
34
32
34
38
46
56
67
81
97
113
130
147
165
181
195
208
219
229
235
238
239
236
230
222
212
199
186
170
152
135
118
101
85
71
59
48
40
35
33
33
37
43
52
63
76
91
107
125
141
158
175
192
204
216
226
233
237
239
237
233
226
216
204
192
175
158
140
124
107
90
75
63
51
43
36
30
38
36
33
52
63
67
84
103
120
136
150
168
188
201
210
222
231
235
240
238
232
230
224
205
192
186
167
143
129
116
98
78
63
57
49
38
30
33
37
38
45
53
67
82
94
111
129
147
163
179
194
209
219
227
234
239
238
237
233
220
212
202
186
170
152
138
118
101
85
73
61
47
40
35
33
33
36
42
51
63
75
90
106
124
140
158
175
190
203
215
225
233
237
238
238
234
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
33
34
40
47
59
71
86
100
117
134
152
169
185
198
211
222
230
236
239
238
235
229
220
209
195
181
165
148
130
113
97
80
67
56
46
39
34
32
34
38
45
56
66
80
94
112
129
147
163
180
194
207
219
228
235
238
238
236
231
224
212
200
186
171
153
135
119
102
86
71
60
49
40
35
33
33
37
43
52
63
75
91
107
124
140
158
175
190
204
215
225
232
237
238
237
233
226
216
204
191
176
159
141
125
107
90
75
63
52
43
37
33
33
35
41
49
59
71
85
101
119
135
152
170
186
199
212
223
230
236
239
238
235
229
220
208
195
180
164
146
129
113
96
80
66
55
46
39
34
33
34
38
46
56
67
81
97
113
130
147
164
181
194
208
219
228
234
238
239
236
231
223
212
199
186
169
153
135
118
101
85
70
59
48
40
35
33
34
37
43
52
63
76
91
108
125
141
158
175
191
204
215
226
233
237
238
237
233
225
216
204
191
175
159
141
125
107
91
75
63
52
43
37
33
33
35
41
48
59
71
85
102
118
135
153
170
186
199
212
223
231
236
239
239
235
229
220
208
195
181
164
147
129
113
96
80
66
55
46
38
34
32
34
37
44
57
69
81
97
112
129
147
164
180
195
207
218
229
236
238
238
237
232
222
211
200
187
169
152
136
119
101
86
71
59
48
41
35
32
33
36
43
54
64
74
89
107
124
142
159
175
192
204
214
227
234
236
238
238
233
225
216
206
192
174
158
143
125
107
92
76
62
51
43
36
32
33
36
40
48
59
71
85
102
119
135
152
170
185
199
211
222
230
236
239
238
235
229
220
208
195
181
165
147
129
113
96
81
67
56
46
38
34
33
34
38
46
56
66
80
96
112
129
146
164
180
195
208
219
228
235
238
239
236
231
223
212
200
186
170
153
135
119
102
86
71
60
49
41
35
33
34
36
43
52
63
75
91
107
124
141
158
175
190
203
215
226
233
237
239
237
233
226
217
205
192
176
159
141
125
108
91
76
63
52
43
37
33
33
35
41
48
59
71
85
101
118
135
153
170
186
199
211
222
230
236
238
238
235
229
220
208
195
181
165
147
130
113
96
80
66
55
46
38
34
31
34
38
45
55
67
81
96
112
129
147
164
180
194
208
219
228
234
238
238
236
231
223
212
199
186
170
153
135
119
102
85
71
59
49
40
35
32
33
36
43
52
63
76
89
107
124
141
158
175
190
204
215
225
232
237
239
237
233
226
216
203
192
175
159
141
124
107
90
76
63
51
43
36
33
33
35
41
48
59
71
86
102
118
135
152
170
185
199
212
222
230
236
239
238
235
229
220
208
195
181
164
147
129
113
96
81
66
56
46
39
34
32
34
38
46
55
66
80
96
112
129
146
164
180
194
208
219
228
234
239
238
236
231
223
212
200
186
170
153
135
119
102
85
71
59
48
41
35
33
33
37
43
52
63
75
90
107
124
140
158
175
190
204
216
226
233
237
239
237
233
226
216
204
192
175
158
141
125
107
91
75
63
52
43
36
33
33
35
41
49
59
71
85
101
118
135
153
170
186
199
212
222
230
236
239
238
235
229
220
208
195
181
165
147
129
113
96
81
67
56
45
38
34
33
34
38
46
55
66
80
96
112
129
146
164
180
194
208
219
228
234
238
239
236
231
224
212
199
186
169
152
135
118
107
84
65
63
52
37
34
34
35
37
39
51
66
76
89
107
125
141
159
175
189
203
216
225
233
237
238
238
231
229
219
199
190
180
160
136
125
110
92
72
59
55
47
36
30
33
37
41
48
58
71
87
101
117
135
152
169
185
199
211
222
230
236
239
238
234
231
216
209
197
179
165
147
132
112
96
81
68
57
45
38
35
33
34
38
45
55
67
80
95
112
129
146
164
180
194
207
219
227
234
238
238
236
231
223
212
200
187
170
153
136
119
102
86
71
59
49
41
35
33
33
36
43
51
63
75
90
107
124
140
158
174
190
203
215
225
232
237
238
237
233
226
216
204
192
176
159
141
125
108
91
76
63
52
43
37
33
33
35
41
48
59
70
85
101
118
134
152
169
185
198
211
222
230
236
238
238
235
229
220
208
196
181
165
148
130
114
97
81
67
56
46
38
34
33
34
38
45
55
66
79
95
111
128
145
163
179
193
207
218
228
235
238
239
236
231
224
213
200
187
171
154
136
120
102
86
71
60
49
41
35
31
33
36
42
51
63
76
90
105
122
140
158
175
189
203
214
225
232
237
238
237
233
226
216
204
192
176
159
142
126
108
91
76
63
52
43
37
33
32
34
40
48
59
71
84
100
117
134
152
169
184
198
211
222
230
236
238
238
235
229
220
208
196
181
164
148
130
114
97
81
66
56
46
39
34
32
33
38
45
55
66
80
95
111
129
145
163
179
194
207
218
228
234
238
239
236
231
224
213
200
187
171
153
136
119
102
86
71
60
49
41
35
32
33
36
43
51
62
75
90
107
124
140
157
174
190
203
215
225
232
237
238
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
33
31
40
50
60
71
85
100
117
133
151
169
184
197
211
223
230
236
238
239
235
227
220
210
196
180
165
148
130
113
98
82
67
56
46
39
34
33
33
38
49
54
63
79
94
112
130
146
164
181
193
207
221
228
233
239
239
235
230
224
214
200
185
171
155
136
120
103
86
70
60
49
41
35
33
33
35
43
52
63
75
90
106
123
140
157
174
189
203
215
225
232
237
239
238
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
33
35
40
48
59
70
85
101
118
134
152
169
185
198
212
222
230
236
238
238
235
229
220
209
195
182
165
148
130
114
97
81
67
56
46
39
34
31
34
38
46
55
66
79
95
112
129
146
163
180
193
208
218
228
234
238
239
237
231
224
213
200
187
171
154
136
120
102
87
72
60
49
41
35
32
33
36
42
51
63
74
90
107
123
140
157
174
189
203
215
225
232
237
239
238
233
226
216
205
192
176
160
142
126
109
92
77
63
52
43
37
33
32
35
40
48
58
70
84
100
117
134
152
169
185
198
210
221
230
236
239
238
235
229
220
208
196
182
165
148
130
114
97
81
67
56
46
39
34
33
34
38
45
55
66
80
95
112
128
146
163
180
194
207
218
228
235
238
239
237
231
224
213
200
187
171
154
136
120
102
86
72
60
50
41
35
33
33
36
43
51
63
75
90
107
123
140
158
175
190
203
215
225
232
237
239
238
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
33
35
40
47
59
71
85
101
117
134
152
169
185
198
211
222
231
236
238
238
235
229
220
209
196
182
165
148
130
114
97
81
67
56
46
38
34
33
34
38
45
55
66
79
95
112
129
146
163
180
193
207
218
228
235
238
239
236
231
224
213
200
187
171
154
136
120
102
86
72
60
49
40
35
32
33
37
43
51
63
75
90
107
123
140
157
174
190
203
215
225
233
237
239
238
233
226
217
204
192
176
159
142
125
108
91
76
63
52
43
37
33
32
35
40
48
59
70
85
101
118
134
152
169
185
198
211
222
230
236
239
237
234
231
224
204
193
189
165
145
131
115
98
80
63
57
49
38
33
32
34
38
46
54
65
80
96
112
128
146
163
180
193
207
219
228
234
238
240
236
232
222
219
200
178
175
160
132
118
105
89
69
56
49
45
37
30
32
38
43
52
62
74
89
107
123
140
158
174
189
203
215
225
232
237
239
237
235
227
215
204
192
177
158
141
127
108
91
75
63
54
43
36
33
33
35
40
47
58
71
85
101
118
134
152
169
185
198
211
221
230
236
239
238
235
229
220
209
195
182
165
148
130
114
97
81
67
56
46
38
34
33
34
38
45
55
66
79
95
111
128
146
163
179
193
207
218
228
234
238
238
236
231
223
213
200
187
171
154
136
120
103
86
71
60
49
41
36
31
33
36
43
52
63
74
90
106
123
139
157
174
189
202
215
225
232
237
238
238
233
227
217
205
192
176
160
142
125
108
92
77
63
53
44
37
33
31
35
40
48
59
70
84
101
117
134
151
168
184
198
211
221
230
236
238
238
235
229
220
209
196
182
166
148
130
114
97
81
67
56
46
39
34
32
34
38
45
55
66
79
95
111
128
146
163
179
193
207
218
228
234
238
239
237
231
224
213
200
187
171
154
137
120
102
86
71
60
49
41
36
33
33
36
42
51
62
75
90
106
123
140
157
174
190
203
215
225
232
237
239
237
234
227
217
205
192
177
160
142
125
109
92
77
63
52
43
37
34
33
35
41
48
58
70
85
100
118
134
152
169
185
198
211
222
230
236
238
239
235
229
220
209
196
182
165
148
131
114
97
81
67
56
47
39
34
31
34
38
44
55
66
80
94
111
128
146
163
179
193
207
218
228
234
238
239
236
231
224
213
201
187
172
154
137
120
103
87
72
61
49
41
36
31
30
37
44
52
63
74
88
105
122
139
158
173
188
203
216
224
231
237
240
237
232
227
218
204
192
177
160
142
126
109
92
76
63
53
43
37
33
31
36
43
46
56
69
83
100
119
133
152
169
184
198
212
221
229
237
238
237
234
230
221
208
195
184
166
148
131
115
97
81
67
56
46
38
34
33
34
38
46
55
66
80
95
112
128
145
162
179
193
207
218
227
234
238
239
236
232
224
213
200
188
171
155
137
120
103
87
72
60
49
41
35
32
33
36
42
51
62
74
89
106
123
140
157
174
189
202
215
225
232
237
239
238
234
226
217
205
192
176
160
142
126
109
92
77
63
53
44
37
33
33
35
40
48
58
70
84
100
117
134
152
168
185
198
211
222
230
236
238
239
235
229
220
209
196
182
165
148
131
114
97
81
67
56
46
38
34
32
33
38
45
55
65
79
94
112
129
146
163
179
193
207
218
228
234
238
239
236
231
224
213
200
187
171
154
136
120
103
86
72
60
49
41
35
33
33
36
42
51
63
75
90
106
123
140
157
174
190
203
215
225
233
237
239
238
234
227
217
205
192
177
160
143
126
108
92
76
63
53
43
37
33
32
35
40
48
58
70
84
101
117
134
151
168
185
198
211
222
230
235
239
238
235
229
220
209
196
182
166
149
131
115
97
81
67
57
46
39
34
33
34
38
45
54
66
79
95
111
128
145
163
179
193
207
218
227
234
238
239
236
231
224
213
201
187
171
155
137
121
103
87
72
60
49
41
35
33
33
36
42
51
62
74
89
105
123
139
156
173
189
202
214
225
232
237
239
237
233
227
217
205
192
177
160
143
126
109
93
77
63
53
44
37
33
33
35
39
47
58
69
83
100
117
133
151
167
184
198
211
222
230
236
238
238
235
229
221
210
197
182
166
149
131
115
98
82
68
57
47
39
34
31
34
38
45
54
65
79
94
111
127
145
162
179
192
206
218
227
234
238
239
236
231
224
214
201
189
172
154
137
121
104
87
72
60
50
41
36
33
33
36
42
51
62
74
89
105
123
139
157
173
189
202
214
224
232
236
239
238
233
227
218
205
192
179
163
138
125
115
91
74
64
54
45
35
30
34
37
39
47
58
70
84
101
116
133
152
168
184
198
210
221
230
236
239
239
234
229
219
214
196
177
169
152
131
108
101
87
63
53
47
43
35
29
33
40
46
54
64
78
94
112
128
144
162
180
193
207
219
228
234
238
239
236
233
223
214
199
189
173
152
137
121
104
87
71
62
51
41
35
31
34
36
42
51
61
75
89
106
123
139
156
173
189
202
215
225
233
237
238
237
233
227
217
205
192
177
160
143
126
109
92
77
63
53
44
37
33
32
35
40
48
58
70
84
100
117
133
151
168
184
198
210
221
230
236
239
239
235
229
221
210
196
183
166
149
131
114
98
82
68
57
47
39
34
31
34
38
45
54
65
79
94
111
127
144
162
179
192
206
218
227
234
238
239
236
231
224
213
201
188
172
154
137
120
103
87
72
60
50
41
35
33
33
36
42
51
62
74
89
105
122
139
156
173
189
202
215
225
232
237
239
238
234
227
217
206
192
177
160
144
126
109
92
77
63
53
44
37
33
33
35
40
48
58
69
84
100
117
133
151
167
184
198
211
221
230
236
238
238
235
229
221
210
196
183
166
149
132
115
98
82
68
56
47
39
34
31
34
38
44
54
65
79
94
111
127
145
162
179
192
206
218
227
234
238
239
237
232
224
213
201
188
172
155
137
121
103
87
72
60
50
41
36
33
33
36
42
51
62
74
89
105
123
139
156
173
189
202
214
224
232
237
239
237
234
227
217
205
192
178
161
144
127
110
93
77
63
53
44
37
33
31
35
39
47
58
69
83
100
116
133
150
167
184
197
210
221
230
236
239
239
235
229
220
209
196
182
166
149
131
115
98
82
68
57
47
39
35
31
31
38
47
55
66
79
93
111
127
144
163
178
192
206
219
227
234
238
240
236
230
224
215
200
186
172
155
136
120
104
87
72
60
50
41
35
33
31
38
44
49
60
73
89
105
124
139
157
175
188
203
216
224
231
238
238
236
233
227
218
205
192
178
160
142
127
110
92
75
63
52
43
37
33
31
34
40
49
59
69
84
100
117
134
151
168
184
197
210
222
230
236
239
238
235
229
221
210
196
182
165
148
132
115
98
81
68
57
47
39
34
33
33
38
45
54
65
79
94
111
128
145
162
179
193
206
218
227
234
238
239
237
232
224
213
201
188
172
155
137
121
103
87
72
60
50
41
35
33
33
36
43
51
62
74
89
105
122
139
156
173
189
202
214
225
232
237
238
237
233
227
217
206
192
177
161
143
127
109
92
77
63
53
44
37
33
33
34
40
47
58
69
84
100
117
133
150
168
184
198
210
221
230
236
238
238
235
229
220
209
197
183
166
149
131
115
98
82
68
57
46
39
34
33
34
38
45
54
65
79
94
111
127
144
162
179
192
206
218
227
233
238
238
236
231
224
214
201
188
172
155
137
121
103
87
73
61
50
41
35
33
33
36
42
51
62
74
89
105
122
139
156
173
189
202
214
225
232
237
239
237
234
227
217
205
192
177
161
143
127
109
93
77
63
53
44
37
33
33
35
39
47
58
69
84
100
116
133
151
167
184
197
210
221
230
235
239
238
236
230
221
209
197
182
167
149
132
115
98
82
68
57
47
39
34
32
34
37
45
54
65
79
94
111
127
145
162
178
192
206
218
227
234
238
239
237
232
224
213
201
188
172
156
138
121
103
88
73
61
50
41
36
33
33
36
42
50
61
73
88
104
122
138
156
173
189
202
214
224
232
237
239
238
234
227
218
206
193
178
161
144
127
110
93
78
65
53
44
37
33
33
35
40
47
57
69
83
99
116
132
150
167
184
197
210
221
229
235
238
238
236
230
221
210
198
184
167
150
132
116
99
83
68
57
47
39
34
32
33
37
45
54
64
78
94
110
127
144
162
178
192
205
217
227
234
238
239
237
232
224
215
200
187
175
158
133
119
110
87
70
62
51
43
34
29
34
39
41
49
62
73
89
105
121
137
156
173
188
202
213
224
232
237
239
238
233
227
216
210
193
173
164
147
127
103
97
83
61
50
43
41
34
29
34
42
49
57
68
82
99
117
133
149
167
184
197
210
221
230
236
239
239
235
230
221
210
196
185
167
147
132
117
98
82
66
58
48
39
34
31
35
37
45
53
63
79
94
111
127
144
162
178
192
206
218
227
233
238
238
236
231
224
215
202
188
172
156
138
122
104
88
73
61
50
41
36
33
33
36
42
50
62
73
89
105
122
139
156
173
188
201
214
224
232
237
239
238
234
227
218
206
192
178
161
144
127
110
93
78
63
53
44
37
33
32
35
39
47
58
69
83
99
116
132
150
167
183
197
210
221
230
235
239
238
236
230
221
210
197
183
167
150
131
115
98
83
68
57
47
39
34
32
34
38
45
53
65
78
94
110
127
144
162
178
192
206
218
227
234
238
239
237
232
224
214
201
188
172
155
138
121
104
88
73
61
50
41
36
33
33
36
42
51
62
73
89
105
122
139
156
173
188
202
214
224
232
237
239
238
234
227
217
205
192
178
161
144
127
110
93
78
63
53
44
37
33
33
34
40
47
57
69
83
99
116
133
150
167
184
197
210
221
230
235
239
238
235
230
221
210
196
183
167
149
132
115
98
82
68
57
47
39
35
33
33
38
45
53
65
78
93
111
127
144
162
178
192
206
217
226
234
238
239
237
231
224
214
201
188
172
155
138
121
104
88
73
61
50
41
35
33
33
35
42
50
61
73
88
105
121
138
155
172
188
202
213
224
231
237
239
238
234
227
218
206
192
178
161
144
127
110
93
78
63
54
44
38
33
34
33
37
48
59
69
83
98
115
131
149
166
183
196
209
221
230
235
238
239
237
229
220
211
198
183
166
150
133
115
99
84
68
57
47
39
34
31
34
36
47
55
63
76
92
109
127
145
161
178
192
205
218
228
232
237
239
236
231
224
216
202
187
172
157
139
122
106
89
73
60
50
41
36
33
33
36
41
50
62
73
88
105
121
138
155
173
188
201
214
224
232
236
239
238
234
227
218
206
192
178
161
144
127
110
93
79
64
53
44
37
33
33
34
39
47
57
68
83
99
115
132
149
167
183
197
210
221
230
235
239
239
236
230
221
210
197
184
167
149
132
116
99
83
68
57
47
39
35
32
33
37
45
54
63
78
93
110
127
144
161
178
192
206
217
227
234
238
239
237
232
224
214
202
189
173
155
138
122
105
88
73
61
50
42
36
33
33
36
42
51
61
73
88
105
121
138
155
173
188
201
214
224
232
236
239
238
234
228
219
207
192
178
161
144
127
110
93
78
63
54
44
37
33
33
35
39
47
57
69
83
99
116
132
150
166
183
197
210
221
229
235
238
238
235
229
221
210
197
184
167
150
132
115
99
83
68
57
47
40
35
33
33
38
44
53
63
78
93
110
127
144
161
178
192
206
217
226
233
238
238
237
232
225
214
202
189
172
156
138
122
104
88
73
61
51
42
36
33
33
36
42
50
61
73
88
104
121
138
155
172
188
201
213
224
232
237
239
238
234
227
218
206
192
179
161
144
127
110
93
78
63
53
44
37
33
33
34
39
47
58
68
83
99
116
132
150
167
183
196
210
221
229
235
238
239
236
230
221
210
197
183
167
150
132
116
99
83
68
57
47
39
35
32
33
38
44
54
63
78
93
110
127
144
161
178
192
206
217
227
234
238
239
236
232
225
214
201
189
172
156
138
121
104
88
73
61
50
41
36
33
33
36
41
50
61
73
88
104
122
138
156
172
188
201
214
224
232
236
239
238
234
227
218
206
192
178
161
144
127
110
93
78
64
53
44
37
33
33
34
40
47
57
68
83
99
116
132
150
167
183
197
210
221
229
235
238
239
236
230
221
210
197
184
165
155
133
108
102
87
66
55
48
40
35
30
31
40
46
52
63
78
93
111
127
143
161
178
192
205
217
227
234
238
237
237
233
222
216
206
185
170
160
142
116
105
90
75
61
47
43
39
33
30
35
43
52
61
72
87
105
122
138
155
172
188
201
214
224
232
236
238
239
233
227
221
202
194
181
160
145
126
112
92
78
63
55
45
36
33
33
34
39
47
57
68
83
99
115
132
149
166
183
196
209
220
229
235
238
238
235
230
221
210
197
184
167
150
133
116
99
83
69
57
47
39
34
32
33
37
44
53
63
77
93
110
127
144
161
178
192
205
217
226
234
237
238
237
232
224
214
202
189
173
156
139
122
105
88
73
61
51
42
36
33
33
36
42
50
61
73
88
104
121
137
155
172
188
201
214
224
232
237
239
238
234
227
218
207
194
179
161
144
127
111
94
78
64
53
45
38
33
32
34
39
47
57
68
83
98
116
132
149
166
183
196
210
221
229
235
238
239
235
230
222
211
198
183
167
150
133
116
99
82
69
57
47
39
34
33
33
37
44
53
63
78
93
110
127
144
161
177
192
205
217
226
234
238
239
237
232
225
215
202
189
173
156
138
122
105
88
73
61
50
42
36
33
33
36
42
50
61
73
88
104
121
138
155
172
188
201
213
224
232
237
239
238
234
227
218
206
193
179
162
144
127
110
94
78
64
54
45
37
34
31
34
39
47
57
68
82
98
116
132
149
167
183
197
210
221
229
236
238
239
236
230
221
210
197
184
167
150
133
116
99
83
69
58
47
39
34
33
34
38
44
54
63
78
93
111
127
144
161
177
192
205
217
227
234
238
238
237
232
225
214
201
189
173
156
138
122
104
88
73
61
50
42
36
33
31
35
43
52
62
73
87
105
121
137
156
172
187
201
215
224
231
237
240
238
232
227
219
207
192
178
163
144
127
111
94
78
65
54
44
37
33
31
35
43
47
55
67
82
98
117
132
150
168
182
196
211
221
228
236
239
237
234
230
222
211
196
184
169
150
133
117
100
82
68
57
47
39
35
33
33
37
45
54
63
78
93
110
127
144
160
177
192
205
217
226
234
238
239
237
232
225
214
202
189
173
156
139
122
105
88
73
61
51
42
36
33
33
36
42
50
61
73
87
104
121
138
155
172
187
200
213
224
231
236
239
238
234
228
218
207
193
179
162
144
127
111
93
79
65
54
45
37
33
32
34
39
47
57
68
82
98
115
132
149
166
183
196
209
220
228
235
238
239
236
230
221
210
197
184
168
150
133
116
99
83
69
58
47
39
34
32
33
37
44
53
63
77
93
109
126
143
161
177
192
205
217
226
234
237
239
237
232
225
214
202
189
173
156
139
122
105
88
74
61
50
42
36
33
33
36
41
50
61
73
87
104
121
137
155
172
187
200
213
224
231
236
238
238
234
228
218
207
193
179
162
145
127
111
94
79
65
54
45
37
33
31
34
39
47
57
69
83
98
115
132
150
167
182
196
209
220
229
235
238
239
236
230
221
211
198
184
168
150
133
116
100
83
69
58
47
39
35
32
33
37
44
54
65
77
92
109
127
144
161
177
192
205
217
227
233
237
239
237
232
225
214
202
189
173
157
139
122
105
89
74
61
50
42
35
32
32
36
41
50
61
73
88
104
121
137
155
172
188
201
213
224
231
237
238
238
234
227
218
207
193
179
162
144
127
111
94
78
65
53
44
37
33
33
34
39
47
57
68
82
98
115
131
149
166
183
196
209
220
229
235
238
238
236
230
222
211
198
184
168
151
133
117
100
83
69
57
47
39
35
33
33
37
44
53
63
77
93
109
126
143
160
177
192
205
217
226
233
238
238
237
232
225
215
203
189
174
157
139
123
106
89
74
62
51
42
36
33
32
36
41
50
61
73
87
103
121
137
154
171
187
200
213
224
231
237
239
238
234
228
218
207
194
178
168
144
122
115
98
75
63
56
46
38
30
31
37
40
45
57
68
82
99
115
130
149
167
182
196
209
220
229
235
238
238
237
231
219
213
201
180
165
157
135
111
98
88
71
53
45
42
38
31
31
39
47
54
63
77
92
110
127
143
160
177
192
205
217
227
233
238
239
238
232
224
217
199
190
176
155
139
121
107
87
73
61
52
43
35
32
33
35
42
50
61
72
88
105
121
137
155
172
187
201
213
224
231
237
238
238
234
228
218
207
193
179
162
145
127
111
94
78
65
54
44
38
34
33
34
39
46
57
68
83
98
115
131
149
166
182
196
209
221
229
235
238
239
236
230
221
210
198
184
168
150
133
116
100
83
69
58
47
40
34
32
34
38
44
53
63
78
93
109
127
143
161
177
192
204
217
226
234
237
238
237
232
225
215
202
189
173
156
139
123
105
89
73
61
51
42
36
33
33
36
42
50
61
72
87
103
121
137
155
172
188
200
213
224
232
236
238
238
234
228
218
206
193
179
162
145
127
111
94
79
65
54
45
37
33
32
34
39
47
57
68
82
98
115
131
148
166
182
196
209
220
229
235
238
239
236
230
222
211
198
184
168
150
134
117
100
84
69
58
47
39
34
33
33
38
43
53
65
78
92
109
126
143
161
177
192
204
217
226
233
238
239
237
233
225
215
203
189
174
157
139
123
106
89
74
62
51
42
36
33
32
35
41
50
61
72
86
103
121
137
155
171
187
201
212
224
231
236
239
238
235
228
219
207
194
180
163
145
127
111
94
79
65
54
45
38
34
33
34
39
47
56
67
82
98
115
131
148
166
182
196
209
220
229
235
238
239
236
230
222
211
198
185
168
151
134
117
100
84
69
58
47
40
35
33
31
36
46
55
63
77
91
109
126
142
160
176
190
204
218
227
233
238
239
238
231
225
216
203
188
173
157
139
122
106
90
74
62
51
42
36
33
32
35
44
50
58
71
86
103
122
138
155
173
187
200
215
225
229
237
239
237
233
228
220
207
192
179
164
145
127
112
95
78
64
54
45
37
34
33
34
39
47
57
68
82
98
115
132
149
166
182
196
209
220
229
236
238
239
236
230
221
210
198
184
168
151
133
116
99
83
69
58
47
40
35
31
34
37
44
53
64
78
93
109
126
143
161
177
192
205
217
227
233
238
239
237
232
225
215
202
189
174
157
139
122
105
89
74
61
51
42
36
33
33
35
42
50
61
72
87
103
121
137
154
172
187
200
213
224
231
236
239
238
234
228
218
207
193
179
163
145
127
111
94
79
65
54
45
38
33
32
34
39
47
57
68
82
98
115
131
148
166
182
196
209
220
229
235
238
239
236
230
222
211
198
185
168
151
133
117
100
84
69
58
47
40
35
33
34
37
44
53
63
77
92
109
126
143
160
176
192
204
216
226
233
237
239
237
232
225
215
203
189
174
157
139
123
105
89
74
62
51
42
36
33
33
36
41
49
61
73
87
103
121
137
154
172
187
201
213
224
231
237
238
238
234
228
218
207
194
179
163
145
128
111
95
79
65
55
45
38
34
33
34
39
47
57
68
82
98
115
131
148
166
182
196
209
220
229
235
239
238
236
230
222
211
198
185
168
151
133
117
100
83
69
58
47
40
35
32
33
37
44
53
63
77
92
109
126
143
160
177
192
205
216
226
233
238
239
237
233
226
215
203
190
174
157
140
123
105
89
74
62
51
42
36
33
33
35
41
49
61
73
88
103
120
137
154
171
187
200
212
224
231
236
238
238
235
228
219
208
193
180
163
146
128
111
95
80
66
55
45
38
34
31
34
39
46
57
68
81
97
114
131
148
165
181
195
208
220
228
235
238
239
236
231
222
211
199
185
169
152
134
118
101
85
71
59
48
40
35
33
33
37
43
53
63
76
92
108
125
142
159
176
192
204
216
226
233
237
239
237
233
225
216
203
188
179
157
134
127
110
86
73
63
52
43
33
31
36
36
39
49
60
71
87
102
118
136
154
170
186
200
211
223
231
236
239
239
233
229
217
212
195
175
166
149
129
105
99
85
63
51
45
42
35
29
33
41
47
56
67
80
97
115
130
147
165
182
195
208
220
229
235
238
239
236
231
221
213
196
186
171
150
135
118
101
84
69
60
50
40
34
31
34
37
43
52
63
77
92
109
125
142
160
176
192
204
216
226
233
238
239
237
233
226
216
203
190
175
158
140
123
106
90
74
62
51
43
36
33
33
35
41
49
60
72
86
103
120
136
153
170
186
200
212
224
231
237
238
238
235
228
219
208
194
180
164
146
128
112
95
80
66
55
45
38
34
32
34
39
46
57
67
81
97
114
130
147
165
181
195
208
219
229
235
238
239
236
231
222
211
199
186
169
152
134
118
101
85
70
59
48
40
35
33
33
37
44
52
63
76
91
108
125
142
159
176
192
204
216
226
233
238
239
237
233
226
216
203
190
175
157
140
123
106
90
75
62
51
43
36
33
33
35
41
49
60
72
86
102
119
136
153
171
186
200
212
223
231
236
239
238
235
228
219
208
194
180
163
145
128
111
95
79
65
55
45
38
34
31
34
39
46
56
67
81
97
114
131
148
165
181
195
209
220
229
235
238
238
236
230
222
212
198
185
169
152
134
118
100
84
69
58
48
40
34
32
33
37
44
53
63
76
92
109
125
142
159
176
192
204
216
226
233
237
239
237
233
225
215
202
190
174
157
139
123
106
89
74
62
51
42
36
33
33
35
41
49
60
72
86
103
120
137
154
171
187
200
213
224
231
236
238
238
234
228
219
207
193
179
163
145
128
111
94
79
65
55
45
38
35
31
32
40
48
57
69
82
97
113
130
149
166
181
195
210
221
229
234
239
239
234
229
224
212
197
184
169
151
132
117
101
84
69
58
48
39
35
31
32
39
46
51
63
76
90
109
126
143
161
176
190
206
218
224
233
238
238
236
232
227
216
201
189
176
158
140
124
107
88
74
62
51
42
36
33
31
35
41
50
60
72
86
102
120
137
153
170
186
200
212
224
231
236
238
238
235
228
219
208
194
180
163
146
129
112
95
80
65
55
45
38
34
33
34
39
46
56
67
81
97
113
130
148
165
181
195
208
219
229
235
238
239
236
231
222
211
199
185
169
152
134
118
101
85
70
59
48
40
35
33
33
37
44
52
63
76
91
108
125
142
159
176
191
204
216
226
233
237
239
237
233
226
216
203
190
175
158
140
124
107
90
75
62
52
42
36
33
33
35
41
49
60
71
86
102
119
136
153
170
186
200
212
223
231
236
239
238
235
229
219
208
194
180
164
146
129
112
95
80
66
55
45
38
34
31
34
39
46
56
67
81
97
114
130
148
165
182
195
208
219
229
235
239
239
235
231
222
211
198
185
169
152
134
118
101
84
70
58
48
40
35
33
33
37
44
53
63
76
91
109
125
142
160
176
192
204
216
226
233
238
239
237
233
225
216
203
190
174
157
140
124
106
90
74
62
51
43
36
33
33
35
41
49
60
71
86
103
119
136
154
171
186
200
212
223
231
236
239
238
235
228
219
208
194
180
164
146
129
112
96
80
65
55
45
38
34
33
34
38
47
56
67
81
97
114
130
147
164
181
195
208
219
229
234
238
239
236
231
222
211
199
185
169
152
134
118
101
85
70
58
48
40
35
32
33
37
43
53
63
76
91
109
125
142
159
176
192
204
216
226
233
238
239
237
233
225
216
203
191
174
157
140
123
106
90
75
62
51
42
36
33
33
35
41
49
60
71
86
103
119
136
153
171
187
200
212
223
231
236
239
238
234
228
219
208
194
180
164
146
129
112
95
80
66
55
45
38
34
33
34
39
46
56
67
81
97
114
130
147
165
182
195
208
219
228
234
238
238
236
230
221
212
198
184
173
154
127
119
107
82
67
60
49
41
33
29
35
39
41
52
63
77
92
108
124
141
160
176
190
203
216
226
233
237
238
236
233
224
220
204
184
177
162
139
122
106
93
76
58
51
45
39
31
31
35
42
51
59
70
85
102
119
135
153
169
186
199
212
223
231
236
239
237
236
228
219
206
196
182
162
146
130
112
95
79
67
56
44
37
33
33
34
38
46
55
67
82
97
114
130
147
164
181
195
208
219
228
235
238
238
236
231
222
212
199
186
169
152
135
118
101
85
70
58
47
40
34
32
33
37
43
52
63
76
91
108
125
142
159
175
192
204
216
225
233
237
239
237
232
225
215
203
190
175
158
140
123
106
90
75
62
51
43
36
33
33
35
41
49
60
71
86
103
119
136
153
170
186
199
212
222
231
236
239
238
234
229
219
208
194
180
164
146
129
112
96
80
66
55
46
38
34
31
34
39
46
56
67
81
97
113
130
147
165
181
195
208
219
229
235
238
239
236
231
222
212
199
185
169
153
135
118
101
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
125
141
158
175
192
204
216
225
233
237
239
237
233
225
216
203
191
175
158
141
124
107
90
75
63
52
43
37
33
31
35
41
49
59
71
85
102
119
135
153
170
186
199
212
223
231
236
239
238
235
228
219
208
194
180
164
146
129
112
96
80
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
147
165
181
195
208
220
229
234
238
239
236
231
223
212
199
185
169
152
135
117
101
84
70
59
48
41
35
33
33
37
43
53
63
76
91
108
124
142
159
175
192
204
216
226
233
237
239
237
233
226
215
204
190
175
158
141
124
107
90
75
63
51
43
37
33
29
35
43
50
60
70
85
102
119
134
154
170
185
199
213
223
230
236
240
238
233
228
220
208
193
180
164
146
129
113
96
79
66
56
45
38
34
31
35
42
45
53
66
80
96
115
130
148
166
180
195
209
219
227
235
238
237
235
232
224
211
198
187
171
152
135
120
101
84
70
59
48
40
35
33
33
37
44
53
63
76
92
108
125
141
158
175
191
204
216
225
233
237
239
237
233
225
215
203
190
175
157
140
123
106
90
74
62
51
43
36
33
33
35
41
49
61
72
87
102
119
136
154
171
187
200
212
223
231
236
239
238
234
228
219
208
194
180
163
145
128
112
95
80
65
54
45
38
34
31
34
39
47
57
68
81
97
114
131
148
166
181
195
208
220
229
234
238
239
236
231
222
211
198
185
169
152
134
118
100
84
70
58
48
40
35
32
33
37
44
52
63
76
91
108
125
142
159
176
192
204
216
226
233
237
238
237
233
225
215
203
190
175
158
140
124
107
90
75
62
51
42
36
33
33
35
41
50
60
71
86
102
120
136
154
171
186
199
212
222
231
236
239
238
234
228
219
207
194
180
164
146
129
112
95
79
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
148
164
181
195
208
219
228
235
238
238
236
231
222
212
199
186
170
153
135
118
101
85
70
59
48
40
35
33
34
37
43
51
63
76
91
107
124
141
158
175
191
203
216
226
233
237
239
237
233
226
216
204
192
176
159
142
125
108
91
75
63
52
43
36
33
33
35
41
49
59
70
85
102
118
135
152
169
185
199
211
222
231
236
239
238
235
229
220
208
195
181
164
147
130
113
97
80
66
56
46
38
34
33
34
38
46
55
66
80
96
112
129
146
164
180
194
208
219
228
235
238
239
237
231
224
212
199
186
170
153
135
119
102
86
71
59
49
41
35
32
34
36
43
52
63
75
90
107
124
141
158
175
190
203
216
226
233
237
239
238
233
226
216
204
192
175
158
141
125
107
91
75
63
52
43
37
33
33
35
40
48
59
71
85
102
118
135
152
169
186
199
212
222
230
236
239
238
235
229
220
209
194
179
168
150
125
113
102
79
63
56
47
39
31
29
35
41
44
54
67
80
97
113
128
146
164
181
194
208
218
228
235
237
239
236
229
224
216
197
182
175
156
131
119
103
87
71
56
50
43
36
31
33
37
44
53
62
74
91
108
124
140
158
175
190
203
215
225
232
237
240
237
233
228
213
204
192
175
158
140
127
107
91
75
63
53
42
36
33
33
35
40
48
59
71
86
101
118
135
152
170
185
198
211
222
230
236
238
238
235
229
220
208
195
181
164
147
130
113
96
80
66
56
45
38
34
32
34
38
45
55
67
81
96
112
129
147
164
180
194
207
219
228
235
238
238
236
231
223
212
199
186
170
153
135
118
101
85
71
59
48
41
35
33
33
36
43
52
63
75
90
107
124
141
158
175
190
204
216
225
233
237
239
237
233
226
216
204
192
176
159
141
125
107
91
76
63
52
43
36
33
32
35
40
48
59
70
85
101
118
134
152
169
185
199
211
222
230
236
239
238
235
229
220
208
195
181
165
147
130
113
97
80
66
56
46
38
34
32
34
38
46
55
66
80
96
112
129
146
163
180
194
207
219
228
234
238
238
236
231
223
213
200
186
170
153
136
119
103
86
71
59
49
40
35
31
33
37
43
51
63
75
90
107
124
140
157
174
190
203
215
225
233
237
238
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
32
35
41
48
59
70
85
101
118
135
152
169
185
198
212
222
230
236
239
238
235
229
219
209
195
181
165
147
130
113
96
81
66
55
46
38
34
32
34
38
46
55
66
80
96
112
129
146
164
180
194
208
219
228
234
238
239
236
232
222
212
199
186
170
153
136
118
101
85
70
59
48
41
36
31
31
38
45
52
63
75
90
107
124
141
159
174
190
204
216
225
233
238
240
237
232
227
217
203
190
176
158
140
125
108
91
75
63
52
43
37
33
31
37
43
47
57
71
85
103
120
135
154
170
185
200
213
221
230
237
238
237
234
230
220
207
195
182
165
146
130
114
95
79
66
55
45
38
34
32
34
39
46
56
66
81
97
113
130
147
164
180
194
208
219
228
235
238
239
236
231
223
212
200
185
170
152
135
118
102
85
70
59
49
40
35
32
33
37
43
52
63
75
91
107
124
141
158
175
191
203
216
226
233
237
239
237
233
226
216
204
192
176
159
142
124
108
91
76
63
52
43
36
33
32
35
41
49
59
70
85
101
118
135
152
169
186
199
212
222
231
236
239
238
235
229
220
208
195
181
165
147
130
113
97
81
66
56
46
39
34
31
34
39
46
56
66
80
95
112
129
146
164
180
194
207
219
228
234
238
239
236
231
223
212
200
186
170
153
136
119
102
86
71
60
49
41
35
33
33
36
42
52
63
76
90
106
124
141
159
175
190
203
215
225
233
237
239
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
44
36
33
33
34
40
48
60
71
84
101
118
135
153
169
185
199
212
222
230
236
239
239
235
229
219
208
195
181
165
147
130
113
97
81
67
56
46
38
34
33
34
38
45
55
66
80
96
112
129
146
164
180
194
208
219
228
235
238
239
236
231
223
212
199
186
171
153
136
119
102
86
71
60
48
41
35
33
33
36
43
52
63
75
90
107
124
140
158
175
190
203
215
225
233
237
239
238
233
226
216
204
192
176
159
141
125
107
91
76
63
52
43
37
33
33
34
40
48
59
70
85
101
118
135
152
169
185
198
211
222
230
236
238
238
235
229
220
208
195
181
164
147
129
113
97
80
66
56
45
38
34
33
34
39
46
55
67
80
96
112
129
147
164
181
195
208
219
228
234
238
239
236
231
224
212
200
186
170
153
135
119
101
86
71
59
49
40
34
33
33
36
43
51
63
75
91
107
124
140
158
175
191
203
215
225
233
237
238
238
233
225
217
204
189
180
161
135
126
113
89
73
63
53
44
34
30
35
37
39
47
59
70
86
101
117
134
152
169
185
198
211
222
231
235
239
238
233
230
224
205
192
187
167
143
131
114
97
80
63
57
48
39
31
31
35
40
46
54
65
80
96
112
129
147
163
180
194
208
219
228
234
239
239
236
234
219
213
202
184
170
152
137
118
101
86
72
60
47
40
35
33
33
36
43
52
63
76
90
107
124
141
158
175
190
204
215
226
232
238
239
237
233
225
216
204
192
176
159
141
124
107
91
75
63
51
43
37
33
32
35
41
48
59
71
85
102
119
135
152
169
186
199
211
222
230
236
239
238
235
229
220
208
195
181
164
147
130
113
96
80
67
55
46
38
34
32
34
38
45
55
66
80
96
112
129
146
164
180
194
208
219
228
235
238
239
236
231
223
212
200
187
171
154
136
119
102
86
71
60
49
41
35
33
33
36
43
51
62
75
90
107
124
140
158
175
190
203
215
225
233
238
238
237
234
227
217
204
192
176
159
142
125
108
91
76
63
52
43
36
33
33
35
40
47
59
71
86
101
117
134
152
169
186
198
211
222
230
236
239
239
235
229
220
209
195
181
165
148
130
114
97
81
67
56
46
38
34
33
34
38
46
56
66
79
95
112
129
146
164
180
194
208
219
228
235
238
239
237
231
224
213
200
187
171
154
136
119
102
86
71
60
49
41
35
33
33
36
43
52
63
75
91
106
124
140
158
175
190
203
215
225
232
237
239
238
233
226
216
204
192
176
159
142
125
107
91
76
63
52
43
37
33
33
35
40
48
59
70
85
101
118
134
152
169
185
198
211
223
231
236
239
239
235
229
220
208
196
181
165
148
130
114
97
80
67
56
46
39
35
30
33
40
47
56
66
79
95
111
128
146
163
178
193
208
219
228
234
239
239
235
230
225
213
199
186
171
153
135
120
103
86
71
60
49
41
35
31
33
39
43
49
61
74
89
107
124
140
158
173
189
204
216
224
232
238
237
236
233
228
217
204
192
178
159
142
127
109
90
76
63
52
43
37
33
32
34
40
49
58
70
85
100
117
134
151
168
184
197
210
222
230
236
238
238
235
229
220
209
196
182
165
148
130
114
97
81
67
56
46
39
34
33
34
38
45
55
66
80
95
112
128
145
163
179
193
206
218
227
234
238
239
236
231
224
213
200
187
171
154
136
120
102
86
71
60
49
41
35
31
33
36
43
51
63
74
90
106
123
140
157
174
189
203
214
225
232
237
238
237
233
226
216
204
192
176
160
142
126
108
91
76
63
52
43
36
33
33
34
40
48
58
70
84
101
118
134
152
169
185
198
211
221
230
236
238
238
235
229
220
209
196
182
165
148
130
115
97
81
67
56
46
39
34
33
34
38
45
54
66
79
95
111
127
145
163
179
193
207
218
227
234
238
239
236
231
224
213
200
187
171
154
136
120
102
86
71
59
49
41
35
33
33
36
42
51
62
75
90
106
123
140
157
174
189
203
214
225
232
237
238
237
233
226
216
205
192
176
160
142
126
108
91
76
63
52
43
37
33
31
35
40
48
59
70
85
101
118
134
151
169
185
198
211
222
230
236
239
238
235
229
219
209
196
182
165
148
131
114
97
81
67
56
46
39
34
33
34
38
45
55
66
80
95
111
128
146
163
179
193
207
218
228
234
238
238
237
231
224
213
200
187
171
154
137
121
103
87
72
60
49
41
36
32
33
35
42
52
63
74
89
105
123
140
157
174
189
202
214
225
232
237
239
238
234
227
217
205
192
177
160
143
126
109
92
77
63
53
43
37
33
33
35
40
47
58
69
84
100
117
133
151
168
184
198
211
221
230
235
239
238
235
229
220
209
196
182
166
149
131
115
98
82
67
56
47
39
34
32
34
38
45
55
65
79
94
111
127
145
163
179
193
206
218
227
234
238
239
237
232
223
213
201
186
176
153
130
125
107
84
71
61
51
41
32
31
36
37
41
51
62
74
90
106
122
139
157
174
189
203
214
225
233
236
239
238
230
230
220
200
192
181
162
137
127
110
92
76
61
55
46
36
31
32
36
42
47
57
69
85
101
117
133
151
168
184
198
211
221
230
236
238
240
235
228
219
211
197
181
165
150
131
115
97
83
68
56
45
38
35
31
34
37
44
55
66
79
94
111
128
146
163
179
193
207
218
228
234
238
239
236
232
224
213
200
187
172
154
137
120
103
86
71
59
50
41
35
33
33
36
42
51
63
74
89
106
123
140
157
174
190
203
215
225
233
237
239
237
233
227
216
205
192
176
160
142
125
108
91
76
63
52
43
36
33
32
35
40
48
59
70
85
101
118
134
152
168
185
198
211
222
230
235
238
238
235
229
220
209
195
182
165
148
130
114
97
81
67
56
46
38
34
32
34
38
46
55
66
80
95
112
128
146
163
180
194
207
218
228
234
238
238
237
231
224
213
200
187
171
153
136
119
103
86
71
60
49
40
35
33
33
36
43
51
63
75
90
106
123
140
157
174
189
203
215
225
232
237
238
237
233
226
216
205
192
176
159
143
126
108
92
77
63
52
43
37
33
32
34
40
48
58
69
84
100
117
134
151
168
184
198
211
221
230
236
238
238
235
229
221
209
196
183
166
149
131
114
97
82
67
56
46
39
35
33
33
38
45
54
65
79
94
111
127
145
162
179
192
206
218
227
234
238
239
237
232
224
213
200
188
171
155
137
121
103
87
72
60
50
41
35
33
33
36
41
50
62
75
89
105
121
139
156
174
188
202
214
225
232
237
238
238
234
227
218
205
192
177
161
144
127
109
93
77
63
53
44
38
32
30
35
41
48
59
69
82
99
116
133
151
167
182
198
211
221
229
236
240
238
234
230
222
209
195
183
167
148
131
115
98
82
68
57
46
39
34
31
35
41
43
52
64
77
94
112
127
146
163
178
193
208
217
226
235
237
237
236
233
225
213
200
189
173
154
138
121
103
86
72
60
50
41
36
32
32
36
43
51
62
75
89
106
123
139
156
173
189
202
214
225
232
237
239
238
233
226
217
205
192
177
161
143
126
109
92
77
63
53
44
37
33
32
34
40
48
59
70
84
100
117
133
151
168
185
198
210
222
230
236
239
239
235
230
220
209
196
182
166
149
131
115
98
81
68
57
47
39
34
33
34
38
45
54
65
79
94
111
128
145
163
179
193
206
218
227
234
238
239
237
231
224
213
201
187
172
154
137
120
103
87
72
60
49
41
35
33
33
36
43
51
62
74
89
106
123
140
157
174
189
202
214
225
232
237
239
237
233
227
217
205
192
177
160
142
126
109
92
77
63
52
44
37
34
33
34
40
47
58
69
84
100
117
134
151
168
184
198
210
222
230
236
239
239
235
229
220
209
196
182
166
148
131
115
97
81
68
56
46
39
34
33
34
38
45
54
65
79
95
111
128
145
163
179
193
207
218
228
234
238
239
237
231
224
213
201
187
172
154
136
120
103
87
72
60
49
41
35
33
33
36
42
51
62
74
89
106
123
139
157
174
189
202
214
225
232
237
239
237
234
227
217
205
192
177
161
142
126
108
92
76
63
53
44
37
33
32
34
40
48
58
70
84
100
117
134
151
168
184
198
210
221
230
236
238
238
235
229
220
209
196
182
166
148
131
114
98
81
67
56
46
39
34
33
33
38
45
54
65
79
94
111
128
145
162
179
193
207
218
227
234
238
239
236
231
224
213
201
187
171
155
137
120
103
87
72
60
49
41
35
33
33
36
42
51
62
74
89
106
123
139
157
173
189
202
214
225
232
237
239
238
234
227
217
205
192
177
160
143
126
109
92
77
63
52
43
37
33
33
34
39
47
59
70
84
100
116
133
151
168
184
197
210
221
230
236
239
238
235
229
220
208
196
181
171
148
126
119
101
79
66
58
48
39
31
31
36
38
44
55
66
78
94
111
127
142
165
183
190
203
222
230
229
237
242
238
228
221
215
204
186
170
156
137
122
101
87
73
59
49
41
36
33
31
36
44
52
62
74
89
106
123
138
158
169
190
205
212
225
231
239
238
237
234
228
217
204
192
178
161
143
126
108
92
77
63
52
44
37
33
33
35
40
47
58
69
84
99
116
133
150
167
184
197
210
221
230
236
238
238
235
229
221
209
197
183
166
149
131
115
98
82
67
57
47
39
34
33
33
37
44
54
65
79
94
111
127
144
162
179
192
206
218
227
234
238
238
237
232
224
214
201
188
173
155
138
121
104
88
72
61
50
41
36
33
33
36
42
51
62
73
89
105
122
138
156
173
188
202
214
224
232
237
238
238
234
227
218
205
192
178
161
143
127
109
93
78
63
53
44
37
33
32
34
39
47
58
68
83
99
116
132
150
167
183
197
209
221
230
236
238
239
236
230
221
210
197
183
167
149
132
115
98
82
68
57
47
39
34
31
33
38
45
54
65
78
93
111
127
144
162
178
192
206
218
227
234
238
239
237
232
224
214
201
188
172
155
137
121
103
87
72
60
49
41
36
33
33
36
42
50
62
74
89
105
122
139
156
173
189
202
214
224
232
237
239
238
234
227
217
205
192
177
161
144
126
109
92
77
63
53
44
37
33
33
34
39
47
58
69
83
99
116
133
150
168
184
197
210
221
229
235
239
238
235
229
221
209
197
183
166
149
131
115
98
82
68
57
47
39
34
33
33
38
45
54
65
79
94
110
127
144
162
179
192
206
218
227
233
238
238
237
232
224
213
201
188
173
155
137
121
103
87
72
61
50
42
36
31
30
37
44
51
62
73
88
105
122
138
157
172
188
202
215
224
231
238
240
237
232
227
219
205
192
178
161
143
126
110
93
77
63
53
44
37
33
31
36
42
45
56
68
83
100
118
133
152
169
182
198
212
220
228
236
238
237
235
231
222
208
196
184
167
148
132
116
97
82
68
57
47
39
34
31
33
38
45
54
65
79
94
111
127
144
162
178
192
206
217
227
234
238
239
236
232
224
214
201
188
172
155
138
121
103
88
72
61
50
41
36
32
33
36
42
51
62
74
89
105
122
138
156
173
189
201
214
225
232
237
239
238
234
227
217
206
192
178
161
144
127
110
93
78
63
53
44
37
33
32
34
40
47
58
69
83
99
116
132
150
167
183
197
210
221
229
236
238
238
235
230
221
210
197
183
167
149
132
116
98
83
68
57
47
39
34
33
34
38
45
54
65
79
94
110
127
144
161
178
192
206
217
226
234
238
238
236
232
224
214
202
188
172
155
137
121
104
88
73
61
50
42
36
33
33
36
42
50
62
74
89
105
122
139
156
172
188
202
214
225
232
236
239
238
234
227
218
206
192
178
161
144
127
110
93
77
63
53
44
37
33
33
34
39
47
58
69
83
99
116
132
149
167
184
197
210
221
230
235
239
239
235
230
220
210
197
183
167
149
131
115
98
82
68
57
47
39
34
31
33
38
45
54
64
79
94
111
127
144
162
179
192
206
217
227
234
237
239
237
232
224
214
201
188
172
155
138
121
104
87
73
60
50
41
36
32
33
36
42
51
62
74
89
105
122
139
156
173
189
202
214
225
232
237
239
237
234
227
217
206
192
177
161
143
126
109
92
77
63
53
43
37
33
31
35
40
47
58
69
84
100
117
133
151
168
184
197
210
222
230
236
239
238
235
229
221
210
196
182
166
149
131
115
98
82
68
57
46
39
34
32
34
38
45
54
65
79
94
111
127
144
162
179
193
206
218
227
234
238
238
237
232
224
214
201
188
172
155
137
120
104
87
73
60
49
41
35
32
33
36
42
51
62
74
89
105
122
139
156
173
189
202
214
225
232
237
238
237
233
227
218
204
192
180
164
138
125
116
92
74
65
54
46
36
30
33
38
39
44
61
72
79
99
120
133
145
168
187
198
206
218
233
239
237
237
236
231
221
210
196
182
166
150
132
112
98
84
67
56
47
40
34
31
33
39
45
56
61
79
96
109
128
144
163
178
192
207
219
228
233
237
240
237
232
224
213
201
189
173
154
138
121
104
87
73
60
50
41
36
33
32
36
42
51
61
74
88
105
122
139
156
173
188
201
214
224
232
237
239
237
234
227
217
205
192
177
161
144
127
110
93
77
63
53
44
37
33
31
35
39
47
58
69
83
99
116
132
150
167
183
197
211
221
230
236
238
238
236
230
221
210
197
183
167
150
132
116
99
82
68
57
47
39
34
32
33
37
44
54
64
78
93
110
127
144
161
178
192
205
217
226
234
238
239
237
232
224
214
201
188
173
155
138
121
104
88
73
61
50
42
36
33
33
36
42
50
61
73
88
104
122
138
155
172
188
201
213
224
232
237
238
237
234
228
218
206
192
179
162
144
127
110
94
78
65
54
44
37
33
33
35
39
47
57
69
83
99
115
132
150
167
183
197
210
221
229
236
238
238
235
230
221
210
197
183
167
150
132
115
98
82
68
57
47
39
34
32
33
38
45
55
64
77
94
111
127
144
161
178
192
206
218
227
234
238
239
237
232
224
214
201
188
172
155
138
121
104
87
73
60
50
41
35
33
33
36
43
50
61
73
89
105
122
138
156
173
188
202
214
224
232
237
239
238
234
227
218
206
192
177
161
143
127
109
93
77
63
53
44
37
33
33
34
40
47
57
69
83
100
117
133
150
167
183
197
210
221
229
235
239
238
235
229
221
209
197
183
168
149
131
115
98
82
68
57
47
40
33
31
35
39
45
54
63
78
93
110
127
144
161
177
192
207
217
226
234
238
237
236
232
224
212
201
189
172
154
137
122
104
88
73
60
50
41
35
32
35
37
39
48
60
72
89
105
122
139
155
171
189
202
212
224
232
235
237
238
236
227
216
205
194
178
161
145
127
109
93
78
64
53
45
38
33
31
34
40
47
57
68
83
98
115
132
149
166
183
196
209
221
229
235
238
238
235
230
221
210
198
183
167
150
133
116
99
83
69
57
47
39
34
33
33
37
44
53
63
77
93
110
127
144
161
177
192
205
217
226
234
237
238
237
232
225
214
202
188
173
156
138
122
105
88
74
61
51
42
35
33
32
36
41
50
61
72
87
103
121
137
155
172
188
201
213
224
231
237
238
238
234
228
218
207
193
179
162
145
127
111
94
78
64
54
44
37
33
33
35
40
47
57
68
82
99
115
132
149
167
183
196
209
220
229
235
238
238
236
229
221
210
197
184
167
150
132
116
99
83
68
57
47
39
34
32
33
37
44
53
64
77
93
110
127
144
161
178
192
205
217
226
233
238
239
237
232
224
214
202
189
173
156
138
122
104
88
73
61
50
42
35
32
33
36
42
50
61
73
88
104
121
138
155
172
188
201
213
224
231
237
238
237
234
227
218
205
192
178
161
144
127
110
92
77
63
53
44
37
33
32
34
39
47
58
68
83
99
116
132
150
167
184
197
210
221
230
235
238
238
235
229
221
210
197
183
167
149
132
116
98
82
68
57
47
39
34
31
34
37
44
54
63
78
94
111
127
144
161
178
192
206
217
227
233
237
239
237
232
224
213
201
188
172
155
137
121
104
88
73
61
50
42
36
33
33
36
42
50
61
73
88
105
122
138
156
173
188
201
214
224
232
237
239
238
234
227
217
206
192
178
161
144
126
110
93
78
63
53
44
37
34
33
34
39
47
58
68
83
99
116
132
150
167
183
197
210
221
229
235
238
239
235
230
221
210
197
184
167
150
132
115
99
83
68
57
47
39
35
33
33
37
44
54
63
78
93
110
127
144
161
178
192
205
217
226
233
238
239
236
233
223
214
202
188
178
155
132
126
110
85
71
63
51
47
31
26
39
40
37
47
63
75
86
101
120
140
156
169
187
202
213
224
231
235
239
238
234
228
219
207
192
178
163
144
129
108
94
80
63
55
42
38
35
30
34
39
49
55
67
82
100
116
130
148
166
183
196
209
219
229
236
239
239
235
230
221
211
198
184
168
151
133
117
100
83
69
58
47
40
35
32
34
37
44
53
63
77
93
109
126
143
160
176
192
205
217
226
233
237
238
237
232
225
215
202
189
174
157
139
122
105
89
74
61
51
42
36
33
32
36
41
50
60
72
87
103
121
137
155
172
188
201
213
224
231
237
239
238
234
228
218
207
193
180
163
145
127
111
94
79
65
54
45
37
33
32
34
39
46
56
68
82
98
115
131
149
166
182
196
209
220
229
235
238
239
235
230
222
211
197
184
168
150
133
117
99
84
69
58
47
40
34
31
33
37
44
53
63
78
92
109
127
143
161
177
192
205
217
226
233
237
239
237
232
225
214
202
189
173
156
138
122
104
88
73
61
51
42
36
33
33
35
42
50
61
73
88
104
121
138
155
172
188
201
214
224
231
236
239
238
234
228
218
206
192
178
161
144
127
110
93
78
64
54
44
38
34
32
34
39
47
57
68
82
99
115
132
149
167
183
197
209
220
229
235
238
238
236
230
221
210
198
184
167
150
132
116
99
84
69
57
47
39
35
33
34
38
44
53
63
77
93
110
127
143
160
177
192
205
217
226
233
238
239
237
232
225
215
202
189
173
157
139
122
105
89
74
61
51
42
36
33
33
35
41
50
61
73
88
104
121
138
155
172
188
201
213
224
232
236
239
238
234
227
218
206
192
179
161
142
129
113
94
79
63
53
45
37
33
33
33
38
47
58
68
82
99
116
131
148
167
184
195
209
221
229
234
239
239
236
230
222
211
197
184
168
149
136
118
97
81
68
57
48
41
35
34
34
36
45
54
63
77
93
109
125
143
162
178
192
204
218
227
233
238
239
236
231
224
214
202
189
174
157
139
123
106
89
74
62
51
42
36
33
32
35
41
49
60
73
87
104
121
137
154
171
187
201
213
224
231
236
239
238
234
227
219
208
194
179
162
145
128
111
94
79
64
54
45
38
34
31
34
39
47
57
68
82
98
115
131
149
166
182
196
209
220
229
235
238
239
235
230
222
212
198
184
168
150
134
117
100
84
70
58
47
39
34
33
33
37
43
53
63
77
92
109
126
143
160
177
192
205
217
226
234
238
239
237
232
224
215
203
189
174
156
139
123
105
89
74
62
51
42
36
33
33
35
41
50
61
72
87
103
121
137
155
171
188
200
213
224
231
237
238
238
234
228
218
207
193
179
162
145
127
111
94
79
65
54
45
37
33
31
34
39
46
57
68
82
98
115
131
149
166
182
196
209
220
229
235
238
238
236
230
222
210
197
184
168
151
133
117
99
83
69
57
47
39
35
32
33
37
44
54
63
78
93
109
127
143
161
177
192
204
217
226
233
237
239
237
233
225
215
202
189
174
156
139
122
105
89
73
62
50
42
36
33
33
36
42
50
60
73
88
104
121
137
155
172
187
201
213
224
231
237
239
238
234
228
218
207
193
179
163
144
127
111
94
79
65
54
45
38
33
33
34
39
47
57
68
82
98
115
132
149
166
182
196
209
220
229
236
239
239
235
230
221
211
198
184
168
150
133
117
100
84
69
58
47
40
34
33
33
38
44
53
63
77
92
109
126
143
160
177
192
205
217
226
233
237
238
237
232
225
215
202
189
174
156
139
123
105
89
74
62
51
43
36
33
33
35
42
50
60
72
87
103
121
137
155
171
187
201
213
224
231
237
239
238
234
227
218
207
193
179
162
144
127
110
94
78
65
54
44
37
33
33
35
39
47
57
68
82
98
115
131
149
166
182
196
209
220
229
235
238
239
236
230
223
210
196
187
170
150
132
117
101
85
67
56
52
41
30
30
36
40
44
51
63
79
94
108
125
142
160
177
192
204
216
227
233
237
239
237
232
225
216
202
190
176
156
140
123
104
92
73
62
50
43
35
34
34
35
42
49
60
72
87
103
120
137
154
171
187
200
213
224
231
236
238
238
234
228
218
207
193
179
163
145
127
111
94
79
65
54
45
37
33
33
34
39
46
57
68
83
98
113
131
149
166
182
195
208
220
229
235
238
238
236
230
221
211
198
185
167
151
133
116
99
83
69
58
47
39
34
31
33
36
44
54
64
77
92
109
127
144
161
177
192
205
217
226
234
237
239
237
232
224
214
202
189
173
156
138
122
105
88
73
61
51
42
36
31
32
36
41
50
61
73
87
104
121
137
155
172
188
200
213
224
231
236
238
238
234
227
218
207
193
178
162
145
127
111
94
78
65
54
45
37
33
32
34
39
47
57
68
82
98
115
131
149
166
182
196
209
220
228
235
238
239
236
230
221
210
198
184
168
151
133
117
100
83
69
58
47
39
35
33
33
37
44
53
63
77
92
109
126
143
160
176
192
205
217
226
233
237
239
237
232
225
214
202
189
174
156
139
123
106
89
74
62
51
42
36
33
32
35
41
49
60
72
87
104
120
137
154
171
187
200
213
224
231
237
238
238
235
228
218
208
193
179
163
146
127
111
94
79
65
54
45
38
34
33
34
39
47
57
68
82
98
115
131
149
166
182
196
209
220
229
235
238
239
236
231
222
211
198
184
168
151
134
117
100
84
70
58
48
40
35
32
33
37
44
53
63
77
92
109
126
143
160
177
192
205
217
226
233
237
239
238
231
222
216
205
190
175
157
139
122
105
89
75
61
50
43
37
33
32
36
42
49
60
74
88
102
120
137
155
171
188
201
213
224
232
237
238
238
235
227
221
209
192
178
162
144
128
112
94
80
66
53
46
39
33
32
35
38
45
56
70
83
97
115
132
148
165
183
197
208
220
229
235
238
239
237
230
222
212
199
185
169
152
134
117
101
84
69
58
48
40
35
33
34
37
44
53
63
77
92
109
126
143
159
176
192
204
216
226
234
238
239
237
233
225
215
203
190
174
157
140
123
106
90
74
62
51
43
36
33
33
35
41
50
60
72
86
103
120
137
154
171
187
200
212
224
231
237
239
238
234
228
219
208
194
180
163
146
128
112
95
80
66
55
46
38
34
31
34
39
46
56
67
81
97
114
130
148
165
181
195
208
220
229
235
238
239
236
231
222
212
199
185
169
152
134
118
101
84
70
58
48
40
34
33
33
37
43
53
63
77
91
108
125
142
160
176
192
204
216
226
233
237
239
237
233
225
215
203
190
174
157
140
123
106
89
75
62
51
42
36
33
33
35
41
50
61
72
86
102
120
137
155
171
186
200
213
224
231
236
239
238
234
228
218
207
193
179
163
145
128
112
94
79
65
54
45
38
34
33
34
39
47
57
67
82
97
114
131
148
166
182
196
209
220
228
235
238
239
236
230
222
211
198
185
169
151
134
117
100
84
69
59
47
40
35
32
33
37
44
53
63
77
92
109
126
142
160
176
192
204
216
226
233
237
238
237
232
225
215
203
189
174
157
139
123
106
89
74
62
51
42
36
33
33
35
41
49
60
72
87
103
120
137
154
171
187
200
212
224
231
236
238
238
234
228
219
207
194
180
163
145
128
111
94
79
66
55
45
38
33
31
34
39
46
56
68
82
98
114
131
148
166
182
196
209
220
229
235
238
239
236
229
222
211
198
184
168
151
134
117
100
84
69
58
47
40
35
31
33
37
44
53
63
77
92
109
126
142
160
177
192
205
216
226
233
237
239
237
232
225
215
203
189
174
157
139
123
106
89
74
62
51
42
36
33
33
35
41
49
60
72
87
103
120
137
154
171
186
200
212
224
230
236
239
235
238
230
213
206
202
182
151
149
137
109
89
79
69
57
41
34
37
35
33
38
46
56
69
83
96
113
131
148
165
182
196
208
219
228
234
239
239
235
229
224
212
198
184
170
153
131
117
104
85
68
58
49
40
34
31
34
38
44
53
63
76
92
109
126
142
160
176
192
204
216
226
233
238
239
237
233
225
216
203
190
174
158
140
123
106
90
75
62
51
42
36
33
33
35
41
49
60
72
86
102
120
136
154
171
187
200
212
224
231
236
238
238
235
228
219
207
194
180
163
146
129
111
95
80
66
55
45
38
34
33
34
39
46
56
67
81
97
114
131
148
165
181
195
209
220
229
235
238
239
236
230
222
212
198
185
169
152
134
118
100
85
70
58
48
40
35
33
33
36
43
52
63
76
92
108
125
142
159
176
192
204
216
226
233
238
239
238
233
226
215
203
190
175
158
140
123
106
90
75
62
52
43
36
33
33
35
41
49
61
72
86
102
119
136
154
171
186
200
213
224
231
237
239
238
235
228
219
208
194
180
164
146
128
112
95
80
66
55
45
38
34
31
34
39
46
57
68
81
97
114
131
148
165
181
195
209
220
229
235
238
239
236
231
222
211
199
185
169
152
134
117
100
84
70
59
48
40
35
31
33
37
44
53
63
77
92
109
126
143
160
176
192
204
217
226
233
238
239
237
233
225
215
203
189
175
157
140
123
106
90
74
62
51
42
36
33
33
35
41
49
60
72
86
103
120
136
154
171
187
200
213
224
231
236
239
238
235
228
219
208
193
180
163
146
127
112
94
79
66
55
45
38
34
33
34
39
46
56
67
82
97
115
130
148
165
182
196
208
217
228
237
240
240
236
230
222
211
197
186
169
150
134
119
101
83
70
59
47
38
35
34
33
35
43
53
63
76
92
109
125
142
160
176
192
205
216
228
236
236
236
236
231
225
216
203
190
175
156
140
125
105
88
75
62
49
42
37
34
31
34
42
51
60
73
88
102
119
137
154
171
187
200
212
223
231
237
239
238
235
228
218
207
194
180
163
145
128
111
95
79
65
54
45
38
34
32
34
39
46
56
67
82
98
114
131
148
166
182
195
209
220
228
235
238
239
236
230
222
211
198
185
169
152
134
117
100
84
70
58
48
40
35
33
33
37
43
53
63
76
92
108
126
142
160
176
192
204
216
226
233
237
239
237
233
226
215
203
190
175
158
140
123
106
90
75
62
51
42
36
32
33
35
41
49
60
72
86
102
120
135
153
170
186
200
212
223
231
236
239
238
234
228
219
208
194
180
163
146
129
112
96
80
65
55
45
38
33
31
34
38
46
56
67
81
97
113
130
147
164
181
194
208
219
228
235
238
239
236
230
222
212
199
185
169
152
135
118
101
85
70
59
48
40
35
32
33
37
43
52
63
76
91
108
125
141
159
175
192
204
216
226
233
237
239
237
233
226
216
203
190
175
158
140
124
106
90
75
63
51
42
36
33
33
35
41
49
60
71
86
102
120
136
154
171
187
200
212
224
231
236
238
238
235
228
219
208
194
180
163
147
129
112
96
79
66
55
45
38
34
33
34
38
45
57
68
81
96
113
130
148
165
181
195
208
220
228
235
238
238
236
231
223
211
198
186
170
152
135
118
101
85
70
59
48
40
35
33
33
37
44
53
63
76
91
108
125
141
159
175
192
204
216
226
233
237
238
237
233
225
216
204
191
175
158
140
124
106
90
75
63
51
43
36
33
33
35
41
49
60
71
87
102
119
136
153
170
186
199
212
222
231
236
239
238
234
228
219
207
194
180
164
146
129
112
96
80
66
55
46
38
34
33
34
39
46
56
67
81
97
113
130
147
164
181
195
208
220
229
235
238
238
236
230
222
212
199
185
169
152
135
118
101
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
124
142
159
173
195
207
210
226
238
238
233
239
236
225
212
202
197
174
152
144
125
104
90
76
63
51
39
36
35
32
34
41
49
60
73
85
101
120
135
154
170
185
198
213
224
229
236
239
238
235
227
220
209
194
181
163
146
127
115
96
77
67
56
46
38
33
34
35
39
46
56
67
81
97
113
130
148
165
181
195
208
219
228
235
238
239
236
230
222
211
199
186
169
152
134
118
101
85
70
59
48
40
35
32
33
36
44
52
63
76
92
108
125
142
159
176
192
204
216
226
233
238
239
238
232
225
216
203
191
174
158
140
124
107
90
74
62
51
43
36
33
33
35
41
49
60
71
87
102
119
136
153
170
186
200
212
222
231
236
239
238
234
228
219
208
194
180
164
146
129
112
96
80
65
55
45
38
34
31
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
228
235
238
238
236
231
222
212
199
185
169
152
134
118
101
85
70
59
48
40
35
33
33
36
43
52
63
76
91
108
125
141
159
176
191
204
216
226
233
237
239
237
233
226
216
204
192
175
158
141
124
106
90
75
63
52
42
37
33
33
35
41
49
60
71
86
102
119
136
153
170
186
199
212
222
231
236
239
238
235
228
219
208
194
181
164
147
129
113
96
80
66
55
45
38
34
32
34
38
46
56
67
81
97
113
129
147
164
181
195
208
219
228
234
238
239
236
231
222
212
199
186
170
153
135
118
102
85
71
59
48
41
35
33
33
37
42
52
63
77
91
107
124
142
159
176
191
204
216
226
233
237
239
237
233
226
216
204
191
175
158
141
125
108
90
75
63
52
43
36
33
33
35
41
50
60
71
86
101
116
136
155
171
186
199
211
223
230
235
240
238
234
229
221
208
194
181
165
147
127
113
97
80
65
56
46
37
34
33
35
38
47
56
66
80
97
112
131
150
163
178
194
207
219
230
235
239
240
235
231
224
212
198
187
169
151
134
120
103
84
69
60
49
40
35
34
33
35
43
52
63
76
91
108
124
141
159
176
192
204
216
226
233
237
239
237
233
226
216
204
192
176
158
141
124
107
90
75
63
51
43
36
33
33
35
40
49
60
71
86
102
119
135
153
170
186
199
212
222
231
236
239
238
235
228
219
208
195
180
164
146
129
112
96
80
66
55
46
38
34
32
34
38
46
56
67
81
97
113
130
147
165
181
195
208
219
228
235
238
239
237
231
222
212
199
186
170
152
135
118
102
85
71
59
48
40
35
33
33
37
43
52
63
76
91
108
125
142
159
175
192
204
216
226
233
237
238
237
233
226
216
204
190
175
158
141
124
107
90
76
63
52
43
36
33
33
35
41
49
60
71
86
102
119
135
153
170
186
199
212
222
231
236
239
238
234
229
219
208
194
180
164
146
129
112
95
80
67
55
46
38
34
32
34
39
46
56
67
81
97
113
130
147
165
181
195
208
219
228
234
238
239
236
231
222
212
199
185
170
152
135
118
101
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
125
141
158
175
192
203
215
225
232
237
239
238
233
225
215
204
192
175
158
141
124
107
90
75
63
52
43
36
33
31
35
41
49
59
71
86
102
119
135
152
170
186
199
212
222
230
236
238
238
234
229
219
208
195
181
164
147
130
112
96
80
66
55
45
39
34
32
34
38
46
56
66
81
96
113
130
147
164
180
195
208
219
228
235
238
239
236
231
223
212
199
186
170
153
135
118
102
85
70
59
48
41
35
33
33
36
43
52
63
75
91
107
124
141
158
175
190
203
216
226
233
237
238
237
233
226
216
204
192
176
158
141
124
107
90
75
63
52
43
36
33
32
35
40
48
60
71
86
101
118
135
153
170
185
199
212
222
230
236
238
238
235
229
219
208
195
181
165
147
130
112
96
80
66
56
46
38
34
31
33
39
45
57
65
85
94
107
133
150
161
176
197
210
217
225
234
242
239
233
230
224
218
198
180
175
155
133
118
102
87
71
56
47
44
35
31
33
37
43
52
64
72
91
110
122
141
157
177
191
203
215
226
234
236
238
238
233
226
216
204
190
176
156
143
126
105
91
76
63
50
42
36
34
33
34
41
49
59
71
86
102
119
136
153
170
186
199
212
222
231
236
239
238
234
229
220
208
195
180
164
147
130
113
96
80
66
55
45
38
34
31
34
38
45
56
67
80
96
113
130
147
164
181
195
208
219
228
235
238
238
236
231
223
212
199
186
170
153
135
118
101
85
71
59
48
40
35
33
33
37
43
52
63
75
91
108
125
141
158
175
190
203
216
226
233
237
239
237
233
226
216
204
191
175
158
141
125
107
90
75
63
52
43
36
33
33
35
41
49
60
71
86
102
119
136
153
171
186
200
222
222
231
236
239
238
235
229
219
208
195
181
164
146
129
113
96
80
66
55
46
38
34
32
34
39
46
56
67
81
97
113
130
147
165
181
194
208
219
229
235
238
239
236
231
223
212
199
186
170
153
135
118
101
85
70
59
48
40
36
33
33
36
43
52
63
76
91
107
124
141
158
175
190
204
215
226
233
238
239
238
233
226
216
204
192
176
158
141
124
107
91
76
63
52
43
37
33
33
35
41
48
60
71
85
102
119
135
152
170
186
199
212
223
231
236
239
238
235
229
220
208
195
180
164
147
130
113
96
80
66
56
45
38
34
33
34
39
46
55
67
80
96
113
129
146
164
180
194
208
219
228
235
238
239
236
231
223
212
200
186
170
153
135
119
102
86
71
59
49
41
35
33
34
35
41
53
63
76
91
107
123
140
157
174
191
203
214
226
233
237
239
238
234
225
216
205
192
175
158
142
125
107
91
77
63
52
43
37
33
32
35
40
51
60
68
83
100
118
136
152
170
187
199
210
224
231
234
239
239
234
227
220
210
195
180
164
149
130
113
98
81
66
56
46
38
34
33
34
38
45
56
67
81
96
112
128
146
164
180
193
208
219
228
234
238
239
236
231
224
212
199
186
170
153
136
119
102
85
71
59
49
41
35
33
33
36
43
52
63
75
90
107
124
141
157
175
190
203
216
226
233
237
239
237
233
226
216
204
192
176
159
141
125
108
91
76
63
52
43
36
33
32
35
40
48
59
70
85
101
119
135
152
169
185
198
212
222
230
236
239
238
235
229
220
209
195
181
165
147
130
113
97
81
67
56
46
38
34
33
34
38
46
55
66
80
96
113
129
147
164
180
194
208
219
228
235
238
238
236
231
222
213
200
186
171
153
136
119
102
85
71
59
49
41
35
33
33
37
43
52
63
75
90
107
124
140
158
175
190
203
215
225
233
237
239
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
36
33
33
35
41
48
59
70
85
101
118
134
152
169
185
199
211
222
230
236
239
238
235
229
220
208
195
181
165
147
130
113
97
80
67
56
46
38
34
33
34
38
45
56
66
80
96
113
129
146
164
180
194
208
219
228
235
238
239
237
231
224
212
200
186
170
153
136
119
102
85
71
59
48
41
35
33
33
36
43
51
63
76
91
107
124
141
158
175
190
203
215
226
232
237
238
238
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
33
35
41
48
59
70
85
102
118
135
152
169
185
199
212
222
230
236
239
238
235
229
219
208
195
181
165
147
130
113
96
80
67
56
46
38
34
33
34
38
46
56
66
81
96
113
129
146
164
180
194
208
219
228
235
238
239
236
231
223
212
200
187
170
153
135
119
102
86
71
59
49
40
35
31
33
36
43
52
63
75
91
107
124
140
158
175
190
203
215
225
233
237
239
237
233
226
216
204
192
176
159
141
125
108
91
76
63
53
43
34
36
36
30
38
53
61
65
86
104
119
131
150
171
188
198
209
222
232
236
238
237
234
229
220
208
195
181
165
148
130
114
98
80
66
58
51
34
33
36
35
36
44
57
66
81
92
111
132
147
162
180
193
208
220
227
233
238
239
236
232
224
212
201
187
171
154
137
119
103
86
71
60
49
41
37
29
34
39
40
51
63
77
89
106
123
141
158
173
190
203
215
225
232
237
238
238
234
226
217
205
192
176
159
142
125
108
91
76
63
52
43
36
33
33
35
40
49
59
70
84
100
118
135
152
169
185
198
211
222
230
236
238
238
235
229
220
209
195
181
165
148
130
114
97
81
67
56
46
39
34
32
34
38
45
55
66
80
95
112
129
146
164
180
194
207
218
228
235
239
239
237
231
224
213
200
187
171
153
136
120
102
86
71
60
49
41
35
33
33
36
43
52
62
75
90
107
124
140
157
174
190
203
215
225
232
237
239
238
233
226
216
204
192
176
160
142
125
108
91
76
63
52
43
37
33
33
35
40
48
59
70
85
101
118
134
152
169
185
198
211
222
230
236
238
238
235
229
220
209
196
181
166
147
130
114
97
81
67
56
46
38
34
32
34
38
45
55
66
80
96
112
129
146
164
179
193
208
219
228
234
239
238
237
231
223
212
200
186
171
153
136
119
102
86
71
60
48
41
35
33
33
36
42
52
63
75
90
107
124
140
158
175
190
203
215
225
233
237
239
238
233
225
216
204
192
176
159
141
124
107
91
76
63
52
43
37
33
33
35
40
48
59
71
85
101
118
135
152
169
185
199
211
222
230
236
239
238
235
228
220
208
195
181
165
147
130
113
97
81
67
54
43
39
36
33
35
38
45
55
65
79
96
112
128
146
165
180
193
208
219
227
233
239
240
236
230
224
213
199
186
172
154
135
120
102
86
70
59
48
43
37
30
31
36
42
53
63
75
92
107
122
141
158
173
189
203
214
224
232
238
239
236
233
228
217
204
192
177
159
142
126
108
91
76
63
52
43
37
33
33
34
40
48
59
70
84
100
117
133
151
168
184
198
210
222
230
236
239
238
235
229
220
209
196
182
166
148
131
115
98
82
68
56
46
39
34
33
34
38
45
55
65
79
95
111
128
145
163
179
193
207
218
228
234
238
239
237
231
224
213
200
187
172
154
137
120
103
87
72
60
49
41
35
33
33
36
43
51
62
74
90
106
123
139
157
174
189
202
214
225
232
237
239
238
234
227
217
205
192
177
161
142
126
109
92
77
63
52
44
37
33
33
35
39
47
59
70
84
100
116
134
151
168
184
198
211
222
230
236
238
239
236
229
221
209
196
182
166
148
131
114
97
82
67
57
47
39
34
32
33
38
46
56
66
79
94
111
128
145
162
179
193
207
218
228
234
238
239
236
231
224
213
200
187
172
154
136
120
102
86
72
60
49
41
36
33
33
36
43
52
63
75
90
107
124
140
157
174
189
203
214
225
232
237
239
237
233
227
217
205
192
176
159
142
126
108
91
76
63
52
43
37
33
33
35
40
48
59
70
85
101
118
134
152
169
185
198
211
222
230
236
239
238
235
229
220
209
196
181
165
148
131
113
97
81
67
56
46
38
34
33
34
39
46
55
66
80
95
112
128
146
163
180
194
207
218
227
234
238
239
237
231
224
213
200
187
171
154
137
120
102
86
71
59
49
41
35
33
33
36
42
52
63
75
90
107
123
140
158
174
190
203
214
225
232
237
239
237
233
226
217
205
192
177
160
143
126
109
91
76
63
52
43
36
33
33
35
40
48
58
70
85
100
118
134
152
169
185
198
211
222
230
236
239
238
235
229
220
209
196
182
165
148
131
114
97
81
67
56
47
39
34
33
34
38
45
54
65
79
94
112
128
146
162
179
193
207
219
227
235
238
239
236
231
224
213
200
187
172
153
135
121
107
84
68
63
52
36
35
36
35
33
39
53
65
74
87
106
124
140
157
173
188
202
215
224
232
237
238
238
234
226
217
205
192
177
161
142
127
106
93
78
62
53
43
37
33
30
34
46
50
50
71
91
97
114
136
152
170
182
196
213
224
228
235
240
238
236
230
219
209
197
182
165
148
130
114
97
81
67
57
46
39
34
32
33
38
46
54
65
77
97
113
126
145
163
180
192
206
218
228
234
237
239
237
231
224
213
200
187
172
155
136
120
103
87
72
60
49
41
35
33
33
36
42
51
63
74
89
106
123
139
157
174
189
202
214
225
232
237
239
237
233
227
217
205
192
177
160
142
126
109
92
76
63
53
43
37
33
32
35
40
48
58
70
84
100
117
134
151
168
184
198
211
222
230
236
238
238
235
229
220
209
196
182
165
149
131
115
97
81
67
56
46
39
34
33
33
38
44
55
66
80
94
111
127
145
163
179
193
206
218
228
234
238
238
237
232
224
213
201
187
171
154
137
120
103
86
71
60
49
41
35
33
33
36
43
52
62
74
89
106
123
140
157
173
189
203
215
225
232
237
238
237
234
226
217
205
192
177
160
143
126
109
92
76
63
53
43
37
33
32
35
40
48
58
70
84
100
117
134
151
168
185
198
211
222
230
236
238
238
235
229
220
209
196
182
166
148
131
114
97
81
67
56
46
39
34
32
34
38
45
55
66
79
95
112
128
145
163
179
193
207
218
228
234
238
238
237
231
224
213
201
187
171
154
137
120
103
86
72
60
49
41
35
33
33
36
42
51
62
74
89
106
123
140
157
174
189
202
215
225
232
237
238
238
234
226
217
205
192
177
161
140
124
110
93
77
63
51
43
36
31
33
35
39
47
60
70
84
100
118
134
150
168
186
198
209
221
230
235
237
238
236
229
221
210
196
182
166
148
131
117
97
79
66
55
46
40
34
33
35
37
45
57
65
78
96
111
127
144
164
181
193
205
219
228
234
238
240
237
230
224
213
201
187
172
155
136
121
103
87
72
60
49
40
35
32
33
36
42
51
62
74
90
106
123
139
157
174
189
203
215
225
232
237
239
238
234
227
217
205
192
177
161
142
126
109
92
77
63
53
43
37
33
33
34
40
47
58
70
84
100
117
134
151
168
184
198
210
221
230
236
239
239
235
229
221
209
196
182
166
148
131
114
98
82
67
57
46
39
34
33
34
38
45
54
66
79
94
111
128
145
163
179
193
207
218
227
234
238
238
237
231
224
213
201
187
172
155
137
121
103
87
72
60
49
41
36
33
33
36
43
51
62
74
89
105
123
139
157
173
189
202
214
225
232
237
239
238
234
227
217
205
192
177
160
143
126
109
92
77
63
53
43
37
33
32
35
40
47
59
70
84
100
117
134
151
167
184
198
211
221
230
236
239
238
235
230
221
209
196
182
166
149
131
115
97
82
67
56
47
39
34
33
34
38
45
54
65
79
94
111
127
145
162
178
192
206
218
227
234
238
239
237
232
224
213
201
188
172
155
137
121
104
87
73
61
50
41
35
32
33
36
41
50
62
74
89
104
122
139
156
173
188
202
213
224
232
237
238
237
234
227
217
205
192
178
161
143
126
109
93
77
63
53
44
37
33
31
34
39
48
58
70
83
99
116
133
150
167
184
197
210
221
230
236
238
238
236
230
221
209
197
183
167
149
131
115
98
82
68
57
47
39
34
32
34
38
45
54
65
79
94
111
128
144
162
178
193
207
218
228
235
238
239
237
232
224
214
200
187
171
154
137
121
103
86
72
60
49
41
35
33
33
36
42
51
62
74
89
106
123
139
156
174
189
202
214
225
232
237
239
237
234
227
217
205
192
177
161
143
126
109
92
77
63
53
43
37
33
32
35
40
47
58
69
84
100
118
133
151
168
185
198
210
221
229
236
238
238
236
226
226
211
192
184
171
148
127
117
100
81
63
55
50
40
31
31
35
39
45
54
65
79
95
112
127
145
162
179
192
207
218
227
234
238
238
237
232
223
212
202
188
171
154
138
120
103
86
73
61
49
41
35
33
33
36
42
51
62
74
89
105
121
144
157
166
191
208
211
221
235
238
240
235
231
229
219
204
192
179
161
144
127
108
92
78
63
53
44
37
33
33
34
39
48
58
69
84
99
116
132
152
167
184
195
212
223
228
235
239
240
235
229
221
211
196
182
166
150
131
115
98
82
68
57
47
39
34
31
34
38
45
55
65
78
94
111
127
144
162
179
192
206
218
227
234
237
238
237
232
224
213
201
188
172
155
137
121
103
87
73
60
49
41
36
33
33
36
42
51
62
74
89
105
122
139
156
173
189
202
214
225
232
237
238
237
234
227
217
206
192
177
161
144
127
109
93
77
63
53
44
36
33
33
35
40
47
58
69
84
100
117
133
150
167
184
197
210
221
230
235
238
238
236
230
221
210
197
183
167
150
132
115
98
82
68
57
47
39
34
33
34
38
45
54
65
79
94
111
127
145
162
179
193
206
218
227
234
238
239
237
231
224
213
201
188
172
155
137
121
104
87
73
61
50
42
36
33
33
36
42
50
61
74
89
105
122
139
156
173
189
202
214
225
232
237
239
237
234
227
217
205
192
177
161
143
127
109
92
77
63
53
44
37
34
32
34
39
47
59
70
84
99
116
132
151
168
184
197
210
221
230
236
238
238
235
230
221
210
197
183
167
149
131
115
98
82
67
56
47
39
34
33
33
38
45
55
65
78
94
111
127
144
162
178
193
206
218
227
234
237
239
237
232
221
212
203
189
173
155
137
121
103
86
73
60
48
41
36
33
32
37
43
51
60
74
90
105
121
139
157
172
189
203
215
224
232
237
238
237
234
226
218
208
192
174
159
142
126
110
92
78
65
52
43
39
33
31
35
39
46
57
70
85
99
116
134
152
168
184
199
210
220
229
236
238
239
235
229
220
209
197
183
166
149
131
115
98
82
67
57
47
39
34
32
33
38
45
55
65
79
94
110
127
144
162
179
192
206
218
227
234
238
239
236
231
224
213
201
188
172
155
137
121
103
87
72
61
50
41
35
33
33
36
42
51
62
74
89
106
122
139
156
173
189
201
214
224
232
237
239
238
234
227
217
205
192
177
161
143
127
109
92
77
63
53
44
37
33
33
34
39
47
58
69
84
99
116
133
150
167
184
197
210
221
230
235
238
238
235
230
221
209
197
182
167
149
132
115
98
82
68
57
47
39
34
33
33
37
44
53
63
78
94
111
127
144
162
178
192
206
218
227
234
238
239
237
231
224
213
201
188
173
155
138
121
104
87
73
61
50
42
35
33
33
36
42
50
62
74
89
105
122
138
156
173
189
202
214
224
232
237
239
238
233
227
218
205
192
178
161
143
127
110
93
78
63
53
44
37
33
33
34
39
47
58
69
83
99
116
133
150
167
183
197
210
221
229
236
239
238
235
230
221
210
197
183
167
149
132
115
99
82
68
57
47
39
34
32
33
37
45
54
64
78
93
110
127
144
162
178
192
205
217
227
234
238
239
237
232
224
214
201
188
173
155
138
121
104
87
72
61
50
42
35
33
33
35
42
50
62
73
89
105
122
139
156
173
189
202
214
224
232
237
238
238
234
228
218
206
192
178
161
144
127
110
93
78
63
53
44
37
33
32
34
39
47
58
69
83
99
116
132
150
167
184
197
210
221
230
235
238
238
236
229
221
210
197
183
167
150
132
116
99
83
68
57
46
39
34
32
33
37
44
54
65
79
93
109
127
144
162
178
192
206
217
227
234
238
238
237
232
224
214
202
188
173
155
138
122
104
88
73
61
50
41
35
33
32
35
42
51
62
73
88
105
122
139
156
173
189
200
214
222
237
237
233
241
238
225
214
209
195
176
158
144
130
111
91
77
65
54
44
37
32
33
35
39
47
58
68
82
99
116
133
150
167
184
197
210
223
227
235
241
238
235
229
224
210
196
183
168
151
132
115
99
83
68
57
47
39
35
33
33
37
45
54
65
78
94
111
127
144
162
178
192
207
216
226
236
241
232
236
239
222
210
203
190
174
154
135
123
107
86
71
62
50
42
36
31
31
37
42
50
61
74
88
106
122
138
156
173
188
202
214
224
232
237
238
239
231
228
220
204
192
178
163
143
127
109
94
79
63
53
44
37
34
33
34
40
48
58
69
83
99
116
133
150
168
184
197
210
221
230
235
239
238
235
230
221
210
197
183
167
149
132
115
99
83
68
57
47
39
34
33
34
37
45
54
65
79
94
111
127
144
162
178
192
206
218
227
234
238
239
237
232
224
214
201
188
172
155
138
121
104
87
73
61
50
42
35
33
32
36
42
51
62
74
88
105
122
139
156
173
188
201
214
224
232
237
239
238
234
227
217
206
192
178
161
144
127
110
93
77
63
53
44
37
33
31
35
40
47
57
69
83
99
116
133
150
167
184
197
210
221
230
236
239
238
235
230
220
210
196
183
167
150
132
115
98
82
68
57
47
39
34
31
33
38
44
54
64
78
94
111
127
144
162
178
192
206
218
227
234
238
239
237
232
224
214
201
188
172
155
138
121
104
87
73
61
50
41
35
33
33
36
42
50
61
73
89
106
122
138
156
173
188
202
214
224
232
237
238
238
234
227
218
206
192
178
161
143
127
109
92
77
63
53
44
37
33
33
34
39
47
58
69
83
99
116
132
150
167
184
197
211
220
227
237
240
239
236
229
220
211
196
183
167
149
131
116
100
82
68
57
47
39
33
33
34
36
43
54
65
78
94
111
127
144
162
179
192
205
217
226
236
240
236
234
231
223
215
203
188
174
156
137
122
106
86
72
62
49
40
35
34
33
35
41
52
62
74
89
105
121
137
156
172
188
201
214
224
231
237
239
238
234
228
218
206
192
178
161
144
127
110
93
78
65
53
44
37
33
32
34
39
47
58
69
82
99
116
132
150
167
183
197
210
221
229
235
238
239
236
230
221
210
197
184
167
150
132
116
99
83
69
57
47
39
34
33
33
38
44
54
63
78
93
110
127
143
161
178
192
205
217
226
234
238
239
237
232
225
214
202
188
173
156
138
122
104
88
73
61
50
42
35
33
33
36
42
49
61
73
88
104
121
138
155
172
188
201
213
224
232
237
238
238
234
228
218
206
192
178
162
144
127
110
93
78
63
53
44
37
33
32
35
39
47
57
68
83
99
115
132
150
167
182
196
209
221
229
235
238
238
235
229
221
210
197
184
168
150
133
116
99
83
68
57
47
39
34
32
33
37
44
53
63
78
93
110
127
143
161
178
192
205
217
227
233
238
239
237
232
225
214
202
189
173
156
139
122
104
88
73
62
51
42
36
33
32
36
42
50
61
72
88
104
121
138
155
172
188
201
213
224
231
236
238
238
234
227
218
207
193
178
162
145
127
111
94
78
64
53
44
37
33
32
34
39
47
57
68
82
99
115
131
149
167
182
197
210
220
229
235
238
238
236
230
221
210
197
184
167
150
133
116
99
83
68
57
47
40
34
32
33
37
44
54
63
77
93
110
127
143
161
177
192
205
217
227
233
238
239
237
232
224
215
202
189
173
156
138
122
105
88
73
61
50
42
36
32
33
35
41
50
61
73
88
104
121
138
155
172
188
201
213
224
231
236
239
238
234
227
218
206
193
179
162
144
127
111
94
78
64
54
44
37
33
33
34
39
47
58
68
82
99
115
132
150
166
183
196
210
221
230
235
238
238
236
230
221
210
197
184
167
150
133
116
99
83
69
57
47
39
35
32
34
37
44
53
64
78
92
110
124
149
161
172
194
209
215
222
237
241
237
233
232
228
215
199
188
175
157
138
122
103
87
74
61
50
42
36
33
33
35
42
50
61
74
87
104
123
135
155
174
187
200
212
226
231
236
238
239
235
226
217
206
193
178
161
144
127
110
94
78
64
54
44
38
34
33
34
39
47
57
69
83
98
115
131
149
166
182
196
209
221
229
235
238
238
236
229
222
211
203
180
163
157
134
112
99
86
70
57
44
40
38
31
31
38
45
54
66
77
91
110
127
143
161
177
192
205
217
226
234
238
238
237
232
224
214
202
190
173
155
137
124
105
86
73
62
50
41
35
34
34
35
41
50
61
73
88
104
121
137
155
172
188
201
213
224
231
236
238
238
234
228
218
207
193
179
162
145
127
111
94
78
65
54
44
37
33
31
34
39
47
57
68
82
98
115
131
149
166
183
196
209
221
229
235
239
238
236
230
221
210
198
184
168
150
133
116
99
83
69
57
47
39
35
33
33
37
44
53
63
77
93
110
127
143
161
177
192
205
217
226
234
237
239
237
233
225
214
202
189
173
156
139
122
105
89
73
61
50
42
36
33
33
35
41
50
61
73
88
103
121
137
155
172
188
201
213
224
231
236
239
238
234
228
218
207
193
179
162
144
127
111
94
79
65
54
44
37
34
33
34
39
47
57
68
82
98
115
132
149
166
183
196
209
220
229
235
238
238
236
230
221
211
197
184
168
150
133
116
100
83
69
58
47
39
34
31
33
37
44
53
63
77
93
110
127
144
161
177
192
205
217
227
234
238
239
237
232
224
214
202
189
174
156
138
122
105
88
73
61
50
42
36
33
33
36
42
50
61
73
88
105
121
135
154
174
189
202
213
223
231
236
238
238
234
226
218
208
194
178
161
145
127
109
92
79
65
53
44
38
33
31
35
40
47
57
69
82
99
116
131
150
169
182
193
209
219
229
237
239
238
237
230
221
211
197
183
168
150
131
116
100
84
68
57
48
40
34
33
35
38
43
53
63
77
93
110
127
143
161
178
192
205
217
226
233
238
239
237
232
224
214
202
189
173
157
139
122
105
88
74
61
50
41
36
33
33
36
42
50
61
73
88
104
121
137
155
172
188
201
213
224
232
236
239
238
234
227
218
206
193
179
162
144
127
111
94
78
64
54
44
37
33
32
34
39
47
57
68
83
99
115
132
149
167
182
196
209
220
229
235
238
238
236
230
221
210
198
184
167
150
133
116
99
83
69
57
47
39
35
32
33
37
44
54
64
78
92
109
127
144
162
178
192
205
217
227
234
238
239
237
232
225
215
202
189
173
156
138
122
105
88
73
61
50
42
36
32
33
35
42
51
62
73
87
104
121
138
155
172
188
201
213
224
231
236
239
238
234
227
218
206
192
179
162
145
127
110
93
78
63
54
44
37
33
33
34
39
47
57
68
82
99
115
132
149
166
183
196
209
220
229
235
238
238
236
230
221
210
197
184
167
150
133
116
99
83
69
57
47
39
34
33
33
37
44
53
63
78
93
110
126
143
160
177
192
205
217
226
233
238
239
237
232
225
215
202
189
173
156
138
122
105
88
73
61
51
42
36
33
33
36
41
50
61
73
88
104
121
137
155
172
188
201
213
224
232
236
238
238
234
228
219
207
193
179
162
145
127
111
94
78
65
54
45
38
33
32
35
39
47
57
68
82
98
115
131
148
166
182
196
209
220
229
235
238
238
236
230
222
211
198
184
168
151
133
117
99
83
69
58
47
39
35
32
33
37
44
53
63
77
92
109
126
143
160
177
192
205
216
226
233
237
239
237
232
225
214
202
189
174
156
139
122
105
89
74
61
51
42
36
33
33
36
41
50
61
73
87
103
121
137
155
172
188
201
213
224
231
236
239
238
234
228
218
207
193
179
162
145
127
111
94
78
65
54
45
38
33
32
35
36
52
58
63
83
103
114
126
152
169
181
192
208
224
230
233
237
240
236
231
222
210
197
185
169
150
133
117
100
84
69
57
47
40
35
31
34
38
42
52
65
78
91
109
127
143
161
176
193
207
217
226
233
238
239
237
232
224
215
202
189
173
156
139
122
105
88
74
61
51
42
36
33
33
36
41
50
61
73
88
103
121
137
155
172
187
200
213
224
232
237
239
238
234
228
218
206
193
179
161
145
127
110
98
80
59
54
51
35
30
34
36
40
44
54
70
85
96
114
133
149
166
184
195
208
221
229
235
239
238
235
231
222
211
198
185
168
152
133
117
101
83
70
60
45
40
37
31
31
37
45
52
63
76
93
110
125
142
160
177
192
205
216
226
234
238
238
237
232
225
215
203
189
174
157
139
123
106
89
74
62
51
42
36
33
32
36
41
49
61
73
87
102
120
137
155
172
187
200
213
224
231
236
238
238
234
228
218
207
193
179
163
145
128
111
94
79
65
54
45
38
34
32
34
39
47
57
68
82
97
115
131
149
165
182
196
209
220
229
235
238
238
236
230
222
211
198
184
168
150
134
117
100
84
69
58
47
40
34
32
34
37
44
53
63
77
93
109
126
142
159
176
192
205
217
226
233
238
239
237
232
225
215
203
189
174
157
139
123
105
89
74
62
51
42
36
33
33
35
42
50
60
72
87
103
121
137
154
172
187
201
213
224
232
236
239
238
234
228
219
207
193
179
163
145
127
111
94
79
65
54
44
38
33
31
34
39
47
56
68
82
98
114
132
148
166
182
196
209
220
229
235
239
238
236
230
221
211
198
184
169
151
133
116
100
83
69
58
47
40
34
31
34
38
44
50
63
79
94
110
126
142
161
176
191
205
217
225
233
240
239
236
231
226
215
201
189
175
156
137
122
106
88
73
62
51
42
36
33
33
35
41
49
62
75
85
101
120
136
154
174
187
200
214
224
230
238
239
237
235
227
217
206
194
179
163
144
128
112
94
79
66
54
43
38
33
31
34
39
47
56
68
82
98
115
131
148
165
182
195
208
219
229
235
238
238
235
230
222
211
198
184
168
151
134
117
100
83
69
58
47
39
35
33
33
37
44
53
63
77
92
109
126
143
160
177
192
204
217
226
233
237
239
237
232
225
215
202
189
174
157
139
122
105
89
74
62
51
42
36
33
33
36
41
50
60
72
86
103
120
137
154
171
187
200
213
223
231
236
238
238
234
228
218
206
193
179
163
145
127
111
94
79
65
54
45
38
34
32
34
39
47
57
68
82
98
115
131
148
165
182
196
209
220
228
235
238
239
236
231
222
211
198
184
169
151
134
117
100
84
69
58
47
40
35
33
33
37
44
53
63
77
92
109
126
143
160
176
192
205
217
226
233
237
239
237
233
225
215
203
189
174
157
139
123
106
89
74
61
51
42
36
33
33
35
41
49
60
73
87
103
120
137
154
171
187
200
213
224
231
237
239
238
235
228
219
207
193
180
163
145
128
111
94
79
65
55
45
38
34
32
34
39
46
57
68
82
97
114
130
148
165
181
195
208
220
229
235
238
239
236
231
222
211
198
185
169
152
134
117
100
84
70
58
48
40
35
32
33
37
44
53
63
76
91
108
125
143
159
176
192
204
216
226
233
237
239
237
233
226
216
203
190
175
157
140
123
106
89
75
62
51
42
36
33
33
35
41
49
60
71
87
102
120
136
154
170
186
200
212
223
231
236
239
238
235
228
219
208
194
180
164
146
128
112
95
79
66
55
45
38
34
31
34
39
47
56
67
82
97
114
130
148
165
182
195
208
220
228
235
238
238
236
230
222
212
198
185
169
152
134
117
101
84
70
59
48
40
35
33
33
37
43
52
63
77
92
109
125
142
160
176
192
204
216
226
233
238
239
238
232
226
215
203
190
174
157
140
123
107
89
74
62
56
41
31
38
35
31
39
53
62
69
83
104
123
136
152
171
188
200
212
222
230
236
239
238
234
229
219
208
194
180
164
145
127
112
95
79
68
52
45
39
33
33
33
41
46
56
67
83
98
113
131
148
165
182
195
208
220
229
236
238
239
236
231
223
211
199
185
169
152
134
118
100
84
70
59
48
40
35
33
34
37
44
53
63
77
92
108
126
142
160
176
192
204
216
226
233
238
239
237
232
225
215
203
190
175
157
140
123
106
89
74
63
51
41
36
33
38
31
37
57
62
68
87
106
121
136
151
171
192
200
211
224
231
236
240
238
233
228
219
207
194
180
162
145
128
111
94
79
65
55
45
38
33
32
35
38
46
55
70
82
96
114
131
149
165
181
196
210
220
228
235
239
238
236
230
221
211
199
185
169
151
134
117
100
84
70
58
47
40
35
32
33
37
44
53
63
77
92
109
126
142
159
176
192
205
216
226
233
237
238
237
232
225
216
203
190
174
157
140
124
106
90
74
62
51
43
36
33
33
35
41
49
60
71
86
103
120
136
154
171
187
200
213
224
231
236
238
238
234
228
219
207
194
180
164
146
128
111
95
80
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
148
165
181
195
209
220
228
235
238
239
236
230
222
211
199
185
169
151
134
117
100
84
69
58
48
39
35
33
33
37
43
53
63
77
92
108
125
142
160
176
192
204
216
226
233
237
239
237
233
225
215
203
190
175
157
140
123
106
90
75
62
51
42
36
33
33
34
41
50
60
72
85
102
120
136
154
170
186
200
212
223
231
236
239
238
235
228
219
208
194
180
163
146
129
113
95
79
66
54
42
39
36
33
34
38
45
56
66
80
99
113
129
148
167
182
194
208
222
228
233
238
240
236
229
222
212
198
185
170
153
134
118
101
84
70
58
47
41
37
30
31
37
42
53
66
76
92
111
125
142
162
175
191
205
216
225
233
238
239
237
232
227
216
203
191
176
157
140
123
106
89
75
63
51
42
36
33
33
35
41
49
60
72
86
102
120
136
154
171
187
200
213
224
231
236
239
238
234
228
219
208
194
180
163
146
128
112
95
79
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
148
165
182
195
208
220
229
235
238
238
236
231
222
211
199
185
169
152
134
118
101
84
70
58
48
40
35
33
33
37
43
53
63
76
91
108
125
142
159
176
192
204
216
225
233
237
239
237
233
225
215
203
190
175
157
140
124
106
90
75
62
51
43
36
33
31
35
41
49
60
71
86
102
120
136
154
171
187
200
212
224
231
236
239
238
234
228
219
208
194
180
164
146
129
112
95
80
65
55
46
38
34
33
34
39
46
56
67
81
97
114
130
148
165
181
195
208
220
228
235
238
239
236
231
222
211
199
185
169
152
134
118
101
84
70
59
47
40
35
32
33
37
43
52
63
76
91
108
125
142
159
176
192
204
216
226
233
238
239
238
233
225
216
203
190
175
158
140
124
106
90
74
62
51
42
36
33
33
35
41
50
60
72
86
103
120
136
154
170
186
200
212
223
231
236
239
238
235
228
219
208
194
180
164
146
128
112
96
80
66
55
45
38
34
33
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
229
235
238
239
236
230
222
211
199
185
169
152
134
118
101
84
70
58
48
40
35
32
33
37
44
52
63
76
91
108
125
141
159
176
192
204
216
226
233
237
238
237
233
225
215
203
190
174
157
140
124
106
90
75
63
51
42
36
33
32
35
41
49
60
72
86
102
119
136
153
171
186
199
212
223
231
236
238
238
234
229
219
208
194
180
164
146
129
112
96
80
66
55
45
38
33
32
33
38
46
57
67
81
96
113
130
147
165
181
195
208
220
228
234
238
239
236
231
222
212
199
182
174
154
129
119
106
85
65
61
51
40
30
31
36
39
41
51
63
76
91
108
124
140
158
176
191
204
216
226
233
237
239
237
233
226
215
204
190
175
156
142
124
105
90
76
62
51
41
37
34
31
35
40
50
60
72
86
102
120
136
154
170
186
200
212
223
231
236
239
238
235
228
219
207
194
180
164
146
128
112
95
80
66
55
45
38
34
33
34
39
46
56
67
81
97
114
130
148
165
181
195
209
220
229
235
238
238
236
230
222
212
199
185
170
152
135
118
101
84
69
59
48
40
35
32
33
36
42
53
63
75
95
111
118
142
166
173
187
206
217
227
231
235
241
240
231
224
217
203
191
176
157
140
125
107
90
75
62
51
42
36
33
33
35
41
49
60
71
87
102
119
137
150
170
188
198
211
224
232
236
238
237
236
230
219
208
195
181
164
147
129
112
96
80
66
55
45
38
34
32
34
39
46
56
67
81
97
113
130
147
164
181
195
208
219
228
234
238
238
236
231
222
212
199
186
169
152
135
118
101
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
125
142
158
176
192
203
216
226
233
237
239
238
233
226
216
203
192
175
159
141
124
107
90
75
63
52
43
36
33
32
35
40
49
60
71
86
102
119
135
153
170
186
199
212
222
231
236
239
238
235
228
219
208
194
181
164
147
129
113
96
80
66
55
46
38
34
33
34
38
46
56
67
80
97
113
130
147
165
180
195
208
219
228
234
238
238
236
231
223
212
199
185
170
153
135
119
101
84
70
59
48
40
35
32
33
37
43
52
63
76
91
108
125
142
158
176
190
204
216
226
233
237
239
237
233
226
216
204
191
176
157
138
125
109
91
76
62
51
43
35
31
34
35
39
49
61
71
85
103
121
135
151
171
187
199
211
224
231
236
238
239
235
228
219
208
194
180
164
146
131
115
93
78
66
53
46
40
31
33
36
37
46
59
67
81
97
112
129
148
166
182
195
208
221
229
235
239
240
235
230
222
212
198
186
170
152
134
118
101
84
70
59
48
40
35
33
33
37
44
53
63
76
91
108
126
142
159
176
192
204
216
226
233
238
239
237
233
225
215
203
190
174
157
140
123
106
89
75
62
51
43
36
33
32
35
41
50
61
72
86
103
120
136
154
171
187
200
213
224
231
236
239
238
234
228
219
208
194
180
164
146
128
112
95
80
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
229
234
238
239
236
231
223
211
199
185
170
152
135
118
101
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
125
141
159
175
191
204
216
226
233
237
239
237
233
226
215
204
191
176
158
141
124
107
90
75
63
52
43
36
33
33
35
41
48
59
71
86
102
119
135
153
170
186
199
212
223
231
236
239
239
235
229
219
208
195
181
164
147
129
113
96
80
66
56
46
38
34
32
34
38
45
56
66
81
96
113
129
147
164
181
194
208
219
228
235
239
239
236
231
222
212
199
186
170
153
136
118
102
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
124
141
158
175
191
204
216
226
232
237
239
237
233
226
216
204
191
175
158
141
124
107
90
75
63
52
43
36
33
31
35
41
49
59
71
86
102
119
135
152
170
186
199
212
223
231
236
238
239
235
229
220
208
195
180
164
146
129
113
96
80
66
55
46
38
34
33
34
39
46
55
66
81
97
114
130
146
164
180
195
208
219
228
235
238
239
236
231
223
211
199
186
170
153
135
118
101
85
70
59
48
40
35
33
33
37
43
52
63
76
91
107
124
141
158
175
190
203
215
226
233
237
238
237
233
226
216
204
192
175
158
140
124
107
91
75
63
51
43
36
33
33
35
41
48
59
71
85
102
119
135
152
169
185
199
211
222
231
233
243
240
229
230
225
208
192
184
167
146
127
112
99
82
64
54
47
39
34
33
33
38
46
56
66
80
96
112
129
147
164
180
194
208
218
227
237
236
239
238
229
224
212
203
186
169
152
137
121
101
84
71
59
49
41
35
32
33
38
43
52
63
76
91
107
124
141
158
175
190
203
215
225
232
237
239
237
233
227
217
204
190
175
159
142
125
107
90
75
63
52
43
36
33
33
35
41
48
59
71
85
101
118
135
152
170
185
199
212
222
230
236
239
238
235
229
220
208
195
181
164
147
129
113
96
80
66
55
45
38
34
33
35
38
46
55
67
80
97
113
130
146
164
180
200
205
214
235
237
234
238
239
232
222
209
199
189
169
150
135
119
101
86
70
58
49
41
35
33
33
36
43
52
63
76
91
107
124
141
158
175
191
205
215
225
232
239
240
235
233
226
217
204
190
175
160
141
123
107
90
75
63
52
42
36
33
33
35
41
49
60
71
86
102
119
135
153
170
186
199
212
222
231
236
239
238
235
228
220
208
195
181
164
147
129
113
96
80
66
55
46
38
34
31
34
38
46
56
66
80
96
113
130
146
164
180
194
208
219
228
235
239
239
237
231
222
212
199
186
170
153
135
119
102
86
71
59
48
40
35
33
33
37
43
52
63
76
91
108
125
141
158
175
191
204
216
226
232
237
239
237
233
226
216
204
192
175
159
141
124
107
90
76
63
52
43
36
33
33
35
41
49
59
70
85
102
118
135
152
170
185
199
211
222
230
236
239
238
235
229
220
209
195
181
165
147
130
114
96
81
67
55
46
38
34
33
34
38
45
55
66
80
96
113
129
146
163
180
194
208
219
228
235
239
238
234
232
225
213
200
186
169
154
135
118
103
85
70
60
51
41
34
33
34
36
41
52
63
74
89
107
124
140
157
175
191
203
215
226
233
237
239
237
235
228
214
202
192
174
160
144
124
109
93
75
63
54
42
37
34
31
34
41
49
59
70
84
102
119
134
152
170
184
198
212
222
230
236
239
238
235
229
220
209
196
181
165
148
130
114
96
80
67
56
46
38
34
31
34
38
45
55
66
80
96
112
129
146
164
180
194
208
219
228
235
238
238
236
231
223
212
199
186
170
154
136
119
102
85
71
59
49
40
35
32
33
36
43
52
63
76
91
107
124
141
158
175
190
204
216
226
232
237
239
237
234
225
216
204
192
175
158
141
125
108
91
75
63
52
43
36
33
33
35
41
49
59
71
85
102
118
135
153
170
186
199
212
222
230
236
239
238
234
229
220
209
195
180
164
147
129
113
96
80
67
55
45
38
34
31
33
38
45
55
67
80
96
113
129
146
164
180
194
208
219
227
234
238
239
236
231
223
212
200
186
170
153
135
119
102
85
71
59
48
40
35
33
33
37
43
52
63
75
90
107
124
141
158
175
190
203
215
225
233
237
238
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
36
33
32
35
41
48
59
71
85
101
118
134
152
169
185
198
211
222
230
236
239
238
235
229
220
208
195
181
166
148
130
113
96
81
66
56
46
38
34
32
34
38
45
55
66
80
96
112
129
146
163
180
194
207
219
228
234
238
239
236
231
224
212
200
186
171
153
136
119
102
86
71
59
48
41
35
33
33
37
42
52
63
75
90
107
124
140
157
175
190
203
215
225
232
237
239
237
233
226
216
204
192
176
159
141
125
107
91
76
63
52
43
37
33
33
35
41
48
59
70
85
101
118
135
152
169
186
199
211
222
230
236
239
238
235
229
220
209
195
181
165
147
130
113
96
81
66
56
46
38
34
32
34
38
45
55
66
80
96
112
129
146
164
180
194
208
219
228
234
238
239
236
231
224
212
200
186
170
153
136
119
102
86
71
60
49
41
35
31
33
35
48
51
57
79
94
103
121
144
160
172
187
203
219
226
230
238
240
237
234
226
216
204
192
176
159
141
125
108
91
76
63
52
42
37
33
31
37
37
49
61
68
85
100
120
133
152
169
187
199
210
221
230
236
239
238
235
229
220
209
195
181
165
148
130
113
97
81
67
56
46
39
34
33
34
38
45
55
66
80
96
112
128
146
163
180
193
207
218
228
234
238
239
237
231
224
213
200
187
171
154
136
120
103
86
71
59
49
41
35
33
33
36
42
51
63
75
90
106
123
140
157
174
189
203
215
225
232
237
239
238
233
226
217
204
192
176
159
142
125
108
91
76
63
52
43
36
33
32
35
40
49
59
70
85
101
118
134
152
169
185
198
211
221
230
236
244
235
230
235
222
205
196
184
165
147
127
114
100
80
65
57
47
39
35
31
33
39
46
55
66
79
95
112
129
146
163
180
193
208
219
228
234
238
239
235
231
222
215
201
184
170
154
136
119
101
86
73
60
48
41
35
31
33
36
42
52
63
75
90
107
124
140
158
175
190
203
215
225
233
237
239
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
36
33
33
35
40
48
59
70
85
101
117
134
152
168
185
198
211
221
230
235
239
238
235
229
220
209
195
181
165
148
131
114
97
81
67
55
45
39
34
31
34
38
46
55
66
80
95
112
128
146
163
179
193
207
218
228
234
238
239
237
231
224
213
200
187
171
153
136
120
103
86
71
59
49
40
35
32
33
36
43
51
62
74
90
107
123
140
158
174
190
203
216
225
233
237
239
237
233
226
216
204
192
176
159
142
125
108
91
76
63
52
43
37
33
33
34
41
48
59
70
85
101
118
135
152
169
182
197
213
224
230
236
238
239
235
228
221
208
194
181
166
148
129
113
98
81
65
55
47
39
32
32
34
38
45
56
67
80
96
113
129
146
164
179
195
210
217
225
235
237
237
239
231
222
214
199
185
173
152
134
120
101
84
70
60
49
40
34
33
34
36
43
53
63
74
91
107
124
140
158
174
190
203
215
225
233
237
238
238
234
227
216
204
192
176
159
141
125
108
91
76
63
52
43
37
33
32
34
40
47
59
71
85
101
118
134
152
169
185
198
211
222
230
236
238
238
235
229
220
208
196
181
165
148
130
114
97
81
67
56
46
39
34
33
34
38
45
55
66
80
96
112
129
146
164
180
194
208
219
228
235
238
238
236
231
224
212
200
187
171
153
136
119
102
86
71
60
49
41
35
33
33
36
43
52
63
75
90
107
124
140
157
174
190
203
215
225
233
238
239
238
233
226
217
205
192
176
159
142
126
108
91
76
63
52
43
37
33
32
35
40
48
59
70
84
101
118
134
152
168
185
198
211
222
230
236
239
238
235
229
220
209
196
182
165
148
130
114
97
81
67
56
46
39
34
33
34
38
45
55
66
79
95
112
128
146
163
179
193
207
218
227
234
238
239
237
231
224
213
202
187
170
154
137
121
103
86
71
60
49
41
36
32
33
36
43
51
62
75
89
106
123
139
157
174
189
202
214
225
232
237
238
238
233
227
218
205
192
176
160
143
126
109
92
77
63
53
43
37
33
32
34
40
47
58
69
84
100
117
133
150
168
184
198
210
221
230
236
239
238
236
229
220
209
196
182
166
149
131
115
98
82
67
56
46
39
34
33
34
38
45
55
65
79
94
111
128
145
162
178
192
206
218
227
234
238
239
236
231
224
213
200
187
171
155
137
120
103
86
72
59
49
41
35
33
33
36
42
51
62
74
89
106
123
139
157
174
189
203
214
225
232
237
239
237
234
227
217
205
192
177
160
143
126
108
91
76
63
53
43
36
33
32
35
40
47
58
70
84
100
117
134
151
168
184
198
211
221
230
235
239
238
235
229
220
210
195
181
166
153
128
111
102
83
63
55
49
40
30
29
36
41
44
53
66
80
95
111
127
144
163
180
193
206
218
227
234
238
239
237
231
224
212
201
187
173
151
137
122
101
86
71
60
49
39
36
34
33
35
42
52
62
75
89
106
123
140
158
174
189
203
215
225
232
236
239
237
233
226
216
205
192
176
159
142
126
109
91
76
63
52
44
37
33
31
35
39
48
58
70
84
100
117
134
151
168
185
198
210
222
230
236
238
238
235
229
220
209
196
182
166
148
130
114
97
81
67
56
46
39
34
32
34
38
45
55
65
79
95
112
129
145
163
179
193
206
219
227
234
238
239
236
231
224
213
201
187
172
154
137
120
103
86
71
60
49
41
35
33
33
36
42
51
62
75
90
106
123
140
157
174
190
203
215
225
232
237
239
238
233
225
217
204
196
175
155
148
127
105
90
78
64
52
40
36
36
33
33
40
49
58
71
85
99
118
134
151
168
184
198
211
222
230
236
239
238
235
229
220
209
195
183
166
147
130
115
98
80
67
57
47
39
33
32
35
37
44
54
66
80
95
111
127
146
163
180
193
207
218
228
235
238
239
237
231
224
213
201
187
172
154
137
120
103
87
72
60
49
41
35
33
33
36
42
51
63
75
89
105
123
140
157
174
189
202
214
225
233
237
238
237
234
227
217
205
192
177
160
143
126
109
92
76
63
52
43
37
33
31
35
40
49
59
70
84
100
117
134
151
168
184
198
211
221
230
235
239
239
235
229
220
209
196
182
166
148
131
114
97
82
67
56
46
38
34
33
34
38
45
54
65
79
94
111
128
145
163
179
193
206
218
227
234
238
239
236
231
224
213
201
188
171
155
137
121
103
87
72
60
49
41
36
33
33
36
43
51
63
72
88
108
124
140
157
173
189
202
213
225
233
235
238
240
235
226
216
207
193
175
159
144
127
107
92
78
63
52
44
38
33
31
35
40
47
58
69
84
103
116
130
152
167
183
200
211
220
232
236
237
240
235
228
221
208
195
182
166
149
131
114
98
83
67
57
47
39
34
32
33
37
45
54
65
79
94
111
128
145
162
179
193
207
218
227
234
238
239
236
231
224
214
201
188
172
155
137
120
103
87
73
60
50
41
35
33
33
36
42
51
62
74
89
105
123
139
156
173
189
202
214
225
232
237
238
237
234
227
217
205
192
177
161
143
127
109
92
77
63
53
44
37
33
32
35
39
47
58
69
84
100
117
133
151
168
184
198
210
221
229
236
239
238
235
229
220
209
196
182
166
149
131
115
98
82
68
57
47
39
34
32
34
38
45
54
65
79
94
111
128
145
162
179
193
206
218
227
234
238
239
237
232
224
213
200
187
172
154
137
120
103
87
72
60
50
41
35
33
32
36
42
51
62
74
89
105
122
139
157
173
189
202
214
225
232
237
238
238
234
227
217
205
192
177
161
143
126
109
92
77
63
53
44
37
33
32
35
39
47
58
70
84
100
117
133
151
168
184
198
210
221
230
236
238
239
235
229
221
209
196
182
166
149
131
115
98
82
67
56
47
39
34
32
34
38
45
54
65
79
94
111
127
145
162
179
193
206
218
227
234
238
239
237
232
224
213
201
187
172
155
137
121
103
87
72
60
49
41
35
33
33
36
42
51
61
74
89
105
122
139
157
173
189
202
214
224
232
237
239
237
234
227
217
206
192
177
161
143
127
109
93
77
63
53
44
37
33
33
35
39
47
59
70
84
99
117
133
151
168
184
197
210
221
230
236
238
239
235
230
220
209
196
183
166
149
131
115
98
82
67
56
47
39
34
33
33
38
45
55
65
78
94
111
128
145
162
179
193
207
218
227
234
238
239
237
232
224
213
201
187
172
155
137
121
103
87
72
60
49
41
36
33
33
36
42
51
62
74
89
105
123
138
157
173
188
203
219
222
228
243
241
233
233
231
218
202
190
179
163
142
124
110
93
77
63
53
42
37
34
32
34
40
47
58
69
84
100
117
133
150
169
184
199
208
223
232
234
239
238
236
229
220
210
198
182
165
148
132
114
98
81
67
57
47
39
34
32
33
38
45
54
65
79
94
111
128
145
162
179
193
206
218
227
234
238
239
237
232
224
214
201
188
172
155
137
121
103
87
72
60
49
41
35
33
33
36
42
51
62
74
89
106
122
139
156
174
189
202
214
225
232
237
239
238
234
227
217
205
192
177
160
143
126
109
92
77
63
53
44
37
33
33
35
40
48
58
69
84
100
117
133
151
168
184
197
210
221
230
236
239
239
235
229
221
209
196
182
166
148
131
115
98
82
68
56
47
39
35
32
34
38
45
54
65
79
94
111
127
145
162
179
192
207
218
227
234
238
239
237
232
224
213
201
188
172
154
138
120
102
92
72
53
53
46
31
30
36
37
42
48
60
77
90
103
122
140
156
174
189
201
214
225
232
237
239
237
234
227
217
205
192
178
161
144
127
109
92
78
63
54
41
39
35
30
34
40
49
57
69
83
101
117
132
151
168
184
197
210
221
229
236
239
238
235
229
221
209
196
182
166
148
131
115
98
82
68
57
47
39
34
33
34
38
45
54
65
79
94
111
127
145
162
179
192
206
218
227
234
238
239
237
231
224
213
201
188
172
154
137
120
103
87
73
60
49
41
36
33
33
36
42
51
62
74
89
106
123
139
156
174
189
202
214
225
232
237
239
238
234
227
217
205
192
177
160
143
126
109
92
77
63
53
44
37
33
32
35
40
47
58
69
84
100
116
133
151
168
184
197
210
221
230
236
239
239
235
230
221
210
195
180
168
151
131
116
98
81
68
55
47
39
32
31
35
39
44
54
66
81
92
108
128
146
161
178
193
206
217
227
235
238
239
237
232
224
214
201
188
174
154
134
121
103
85
75
61
48
43
35
31
35
35
41
52
62
72
88
105
123
139
155
173
190
201
214
225
232
236
239
238
233
227
217
206
192
178
161
144
127
110
93
77
63
53
44
37
33
33
34
40
47
58
69
83
99
116
133
150
167
183
197
210
221
230
236
239
238
235
230
221
210
197
183
167
149
132
115
98
82
68
57
47
39
34
32
33
38
45
54
64
79
93
111
127
144
162
178
192
206
218
227
234
238
239
237
232
224
214
201
188
172
155
137
121
104
88
73
60
50
41
35
33
33
36
42
51
62
73
89
105
122
138
156
172
188
202
214
225
232
237
239
238
234
227
217
205
192
177
161
143
127
109
93
76
63
52
44
37
33
31
34
40
48
58
70
84
100
117
133
151
168
184
198
210
222
230
236
239
238
235
229
220
209
196
182
166
149
131
114
98
82
67
56
46
39
34
33
34
38
45
54
65
79
94
111
128
145
162
179
193
207
218
228
234
238
238
237
232
224
213
201
187
171
154
137
120
103
87
72
60
50
41
36
33
33
36
43
51
62
74
89
106
123
139
156
174
189
202
214
225
232
237
239
237
234
227
218
205
192
177
161
143
126
109
93
77
63
53
44
37
33
33
35
40
47
58
69
83
99
116
132
150
167
183
197
210
221
230
235
239
239
236
230
221
210
197
183
167
150
132
115
99
83
68
57
47
39
34
32
34
37
44
54
63
78
93
110
127
144
161
178
192
205
217
226
234
238
238
237
232
224
214
202
189
173
156
139
122
105
88
73
61
50
42
35
33
33
36
42
50
61
73
88
104
121
137
155
172
188
201
213
224
231
237
238
238
234
227
218
206
193
178
161
144
127
110
93
78
64
54
45
38
33
32
34
39
47
57
68
83
99
115
132
149
167
182
196
210
221
229
235
238
239
236
230
221
210
197
183
167
150
132
115
99
83
68
58
47
38
35
30
39
38
38
57
68
76
89
113
129
142
158
177
195
207
216
227
235
238
239
237
231
224
214
201
188
172
156
138
122
104
87
73
60
50
41
35
35
30
36
44
49
62
73
90
103
120
139
157
174
187
201
214
225
232
237
238
238
234
228
218
206
192
178
162
144
126
110
93
78
63
53
44
37
33
32
34
39
47
58
68
83
99
116
133
150
167
183
197
210
221
230
235
239
238
235
230
220
210
197
183
166
149
132
115
98
82
68
57
47
39
34
31
34
38
45
54
65
79
93
111
127
145
162
178
192
206
217
227
234
238
238
237
232
224
214
201
188
172
155
137
121
104
88
73
61
50
41
35
33
33
36
42
51
62
73
88
105
122
138
155
173
188
201
213
224
232
236
239
238
234
227
217
206
192
178
161
144
127
110
93
77
63
53
44
37
33
33
34
39
47
57
69
83
99
116
133
150
167
183
197
210
221
230
235
239
238
236
229
221
210
197
183
167
149
132
115
98
83
68
56
47
39
32
37
35
31
47
58
63
76
95
111
127
142
159
180
194
204
217
228
234
239
239
235
231
224
214
201
188
171
155
138
121
104
88
73
60
50
41
35
33
34
36
43
48
62
76
87
105
122
140
155
172
189
202
214
224
232
237
239
238
234
226
217
206
192
178
161
144
127
110
93
78
63
53
44
37
33
32
35
39
47
57
69
83
99
116
132
149
167
184
196
210
221
230
235
239
239
236
230
221
210
197
183
167
150
132
115
98
82
68
57
47
39
34
31
33
37
45
54
65
78
93
110
127
144
161
178
192
205
217
227
234
237
239
236
232
224
214
202
188
173
156
138
121
105
88
73
61
50
41
36
33
33
36
42
50
61
74
89
105
122
139
155
170
190
203
214
225
231
236
239
237
234
228
216
204
193
180
161
143
127
111
92
76
65
54
43
36
34
32
33
39
48
57
68
83
99
115
132
149
167
185
197
207
221
230
234
240
240
234
231
222
208
199
184
166
150
132
115
99
83
69
57
46
39
35
32
34
38
44
53
63
78
93
110
127
144
161
177
192
206
217
227
234
238
239
237
232
224
214
201
188
173
156
138
121
104
88
73
61
50
42
36
33
33
36
42
50
61
73
88
104
122
138
156
173
188
201
213
224
232
237
239
238
234
227
218
206
193
178
161
144
127
110
93
77
64
53
44
37
33
33
34
39
47
58
69
83
98
116
132
150
167
183
197
210
221
230
235
238
238
236
230
221
210
197
183
167
150
132
116
98
82
68
57
47
39
34
31
33
38
45
54
65
77
93
110
127
144
161
178
192
206
217
227
234
238
239
237
232
225
214
202
188
172
156
138
121
104
88
73
61
50
41
36
33
33
36
42
51
61
73
88
105
121
138
155
172
188
202
214
224
232
237
239
238
234
227
218
205
193
178
161
144
127
110
93
78
63
54
44
37
33
33
34
39
47
58
69
83
99
116
132
150
167
183
196
209
220
229
235
238
239
236
230
221
210
198
184
167
150
132
116
99
83
69
57
47
39
34
33
33
37
44
53
63
78
93
110
127
144
161
177
192
205
217
226
234
238
239
237
232
225
215
202
189
173
156
139
122
105
89
73
61
50
42
36
32
33
36
41
50
61
73
88
104
121
138
155
172
188
201
213
224
231
237
239
238
234
228
218
206
193
179
162
144
127
111
94
78
64
54
44
37
34
33
34
39
47
57
68
82
98
115
132
149
166
182
197
209
220
229
235
238
238
236
230
221
210
198
184
168
150
133
117
99
83
69
57
47
39
34
33
33
37
45
54
63
78
93
110
127
143
161
177
192
205
217
227
234
238
239
237
232
225
214
202
189
173
156
138
122
104
88
73
61
50
42
36
33
33
36
41
50
61
73
88
105
121
138
155
172
188
201
213
224
232
237
239
238
233
228
218
204
196
182
157
143
132
111
87
79
67
54
41
35
36
34
33
38
48
58
68
83
98
115
132
150
166
183
196
209
220
229
235
239
238
236
229
222
212
196
183
169
150
131
115
101
82
69
57
48
41
33
31
34
38
44
54
63
77
93
110
127
144
161
177
192
205
217
226
234
238
239
237
232
224
214
202
189
173
156
138
122
105
88
74
61
51
42
36
32
32
36
42
51
61
73
88
104
121
138
155
172
188
201
214
224
231
236
239
238
234
228
218
206
192
179
162
144
127
111
93
78
65
53
44
37
33
33
35
39
47
57
68
83
98
115
132
150
167
183
196
209
220
229
235
238
239
235
230
221
210
197
184
167
150
132
116
99
83
68
57
47
39
34
32
33
37
43
54
64
79
93
109
127
144
161
177
192
205
217
227
234
238
239
237
232
225
214
202
189
173
156
139
122
105
89
73
61
50
41
36
33
33
35
41
51
61
73
87
104
121
138
155
172
188
201
213
224
231
236
238
238
234
228
218
206
193
179
162
144
127
110
93
77
64
53
44
37
33
32
34
40
46
57
70
87
93
113
139
149
162
183
198
210
220
226
236
242
237
233
231
221
210
198
183
166
150
133
116
100
82
68
58
47
39
35
32
33
37
44
53
65
78
93
111
125
143
164
176
191
205
218
226
233
237
240
238
231
224
215
202
189
173
156
138
122
105
88
73
61
51
43
36
33
33
35
42
50
61
73
87
104
120
137
155
172
188
201
213
224
232
237
239
238
234
227
218
206
193
179
162
144
127
110
94
78
64
54
44
37
33
33
34
39
47
57
68
82
98
115
131
148
166
182
197
209
221
229
235
239
238
236
230
222
210
198
184
168
150
133
117
99
83
68
58
47
37
35
35
33
38
44
52
63
76
92
111
126
141
161
179
192
204
217
228
233
236
238
239
231
224
215
203
189
172
156
139
122
105
89
73
61
50
42
37
34
30
34
42
48
62
75
86
105
122
136
155
173
186
201
213
222
231
236
239
239
233
227
219
207
193
179
163
144
127
111
94
79
65
54
44
37
34
32
34
39
47
57
68
82
98
115
132
149
166
182
196
209
220
229
235
238
239
236
230
221
211
198
184
168
151
133
117
99
84
69
58
47
39
35
32
33
37
44
53
63
78
93
110
126
144
160
177
192
205
217
226
234
237
238
237
232
224
214
202
189
173
157
139
122
105
88
73
61
50
42
36
33
33
35
41
50
61
73
88
104
121
138
155
172
188
201
213
224
232
237
238
238
234
228
218
207
192
178
162
144
127
110
94
78
64
53
44
38
34
33
34
39
47
57
69
83
99
115
131
149
166
183
196
209
221
229
235
239
239
236
230
222
210
198
184
168
150
133
116
99
83
68
57
47
39
34
33
33
37
44
53
63
77
93
110
127
144
161
177
192
205
217
227
234
238
238
237
231
224
215
202
189
173
156
138
122
105
88
73
61
50
42
36
33
33
36
41
50
61
74
88
103
120
137
156
172
187
201
214
224
232
236
238
238
234
228
218
206
193
179
162
145
127
111
94
78
65
54
45
37
33
31
34
39
47
58
68
81
98
115
132
149
166
182
196
209
221
229
235
238
239
236
230
222
211
197
184
168
150
133
116
100
84
69
58
47
39
34
33
33
37
44
53
63
77
93
109
126
143
160
177
192
205
217
226
233
238
239
237
232
225
215
202
189
174
157
139
122
105
89
74
62
50
42
36
33
33
35
41
50
60
72
87
103
121
137
155
172
187
200
213
224
231
236
238
238
234
228
218
207
193
179
163
145
127
111
94
79
65
54
45
38
34
33
34
39
47
57
68
82
98
115
131
149
166
182
196
209
220
229
235
238
239
236
230
222
211
198
184
168
151
134
117
100
84
69
58
47
39
35
32
33
37
44
53
63
77
92
108
127
142
158
178
195
201
213
232
236
232
238
240
233
222
212
204
192
173
155
140
124
106
89
74
61
51
43
36
33
33
36
41
50
61
72
87
103
120
138
155
171
185
201
214
222
231
237
239
238
234
229
220
206
193
178
164
145
127
110
93
79
65
55
45
38
33
33
34
39
46
57
67
82
98
114
131
148
166
182
196
209
220
229
235
239
238
236
230
222
211
198
184
168
150
133
116
100
84
69
58
47
39
34
33
33
37
44
53
63
77
93
109
126
143
160
177
192
205
217
226
233
237
239
237
232
225
215
202
189
173
156
139
122
105
89
74
62
51
42
35
33
33
35
41
50
60
72
87
103
120
137
155
171
187
201
213
224
231
236
239
238
234
228
218
207
193
179
162
145
127
111
94
79
65
54
44
38
33
33
34
39
46
57
68
82
98
115
131
149
166
182
196
209
220
229
235
239
239
236
230
222
211
198
185
168
151
134
117
100
83
69
58
47
39
35
33
33
37
44
53
63
77
92
109
126
143
161
177
192
205
216
226
233
238
239
237
232
225
215
202
189
174
156
139
122
106
89
74
61
51
42
36
33
32
35
42
50
60
73
87
104
120
137
155
170
192
201
207
226
236
234
237
240
236
229
216
205
195
181
162
144
128
111
95
80
63
54
46
37
34
32
34
38
47
58
69
83
97
114
132
149
166
182
197
209
220
228
236
240
236
235
231
223
211
197
184
169
151
133
117
99
83
70
58
47
39
35
33
33
37
44
54
63
77
92
110
126
143
160
176
192
205
217
226
233
238
239
238
233
225
215
203
190
174
157
139
123
105
89
74
62
51
42
35
33
32
36
41
50
60
72
87
104
120
137
154
171
187
200
213
224
231
236
239
239
233
226
220
209
193
180
162
144
128
110
94
80
63
54
46
39
33
31
35
40
45
55
69
83
96
114
132
149
165
182
196
209
220
229
235
238
239
236
231
224
211
196
185
168
151
136
117
99
86
69
57
50
39
34
33
33
37
44
53
63
77
91
109
126
142
161
177
192
204
217
226
233
238
239
237
232
225
216
203
189
174
157
139
123
106
89
74
62
51
42
36
33
33
36
41
50
60
72
87
103
121
136
154
171
187
200
213
224
231
237
238
238
234
228
218
207
193
179
163
145
127
111
94
79
65
54
45
38
33
33
34
39
46
56
68
82
98
115
131
149
166
182
196
209
220
229
235
238
238
236
230
222
211
198
184
168
151
134
117
100
84
70
58
47
40
35
33
33
37
44
52
63
77
92
109
126
142
160
176
192
204
216
226
233
238
239
237
232
225
215
203
190
174
157
139
123
105
89
74
62
51
42
36
33
31
35
41
50
60
72
87
103
120
137
155
171
187
200
213
224
231
237
238
238
234
228
219
207
194
179
163
145
128
112
95
79
65
54
45
38
34
32
34
39
47
57
67
81
98
114
131
148
166
182
196
208
220
229
235
238
239
236
230
222
211
198
185
169
152
133
117
100
84
70
58
48
40
34
32
33
37
44
53
63
76
92
109
126
142
160
176
192
205
216
226
233
237
239
237
232
225
215
202
190
174
157
139
123
105
89
74
61
51
42
36
33
33
36
41
50
61
73
87
104
120
137
154
171
188
200
213
224
231
236
239
238
234
228
218
207
193
179
162
145
127
111
94
79
65
54
45
38
33
33
34
39
47
57
68
82
98
115
131
148
166
182
196
209
220
229
235
238
238
236
229
222
212
198
184
167
151
134
117
100
83
69
58
48
40
34
32
33
37
44
53
63
77
92
109
126
143
160
177
192
205
217
226
233
238
239
237
233
226
216
203
189
174
157
140
123
106
89
74
62
51
42
36
33
33
36
41
50
60
72
87
103
120
137
154
171
187
200
213
223
231
236
239
238
234
228
218
207
194
180
163
145
127
111
94
79
65
53
45
35
39
33
27
43
50
53
63
85
100
113
127
148
169
183
193
208
221
229
235
239
238
235
231
222
210
198
185
169
151
133
117
100
84
70
59
47
42
31
33
35
35
44
53
65
76
91
109
127
143
158
176
192
204
216
226
233
238
239
238
232
225
215
203
190
175
157
140
123
106
90
74
62
51
42
36
33
33
35
41
49
60
72
87
103
120
136
153
171
187
200
213
224
231
236
238
238
234
228
219
208
194
180
163
146
128
111
95
79
65
54
45
38
34
32
34
39
46
56
68
81
98
115
130
148
165
181
196
208
220
229
235
238
238
236
231
222
212
199
185
169
151
134
117
100
84
70
58
48
40
35
33
33
37
43
52
63
77
92
109
125
142
159
176
192
204
217
226
233
237
239
237
233
225
215
203
190
174
157
140
123
106
89
74
62
51
43
36
33
33
36
41
49
60
71
86
102
120
136
153
170
187
199
213
223
231
236
239
238
234
228
219
208
194
180
163
146
128
112
95
79
65
55
45
38
33
33
34
38
46
56
67
81
97
114
130
148
165
182
195
208
219
228
235
238
239
236
230
222
211
199
185
169
152
134
117
101
84
70
59
48
40
34
33
33
37
43
53
63
76
92
108
125
142
159
176
192
204
216
225
233
238
243
233
229
233
216
199
191
176
158
139
121
107
93
73
60
52
42
36
34
31
34
41
50
60
72
86
102
121
137
154
171
187
200
213
224
231
237
238
238
235
226
218
210
193
178
163
147
127
111
94
80
67
54
44
38
34
32
35
39
46
56
68
82
97
114
131
148
166
182
195
209
220
229
235
238
238
236
230
222
211
198
185
169
152
134
118
100
85
69
58
48
40
35
33
33
37
43
52
63
77
91
106
127
144
159
177
192
204
217
225
233
239
237
236
234
227
215
202
191
176
157
138
125
107
89
74
63
52
41
36
34
33
35
41
49
59
71
86
103
121
135
152
171
186
199
214
224
230
238
238
238
236
227
219
208
194
180
163
146
129
112
94
80
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
148
165
182
195
208
220
228
235
238
238
236
230
222
211
198
185
169
152
134
118
101
85
70
58
48
40
35
32
33
37
44
52
63
76
92
109
125
143
160
176
192
204
216
226
233
237
239
237
233
225
216
203
191
174
158
140
124
107
90
75
63
51
42
36
33
33
35
41
49
60
71
86
103
120
136
153
171
186
200
212
222
231
236
239
238
235
228
219
208
194
180
163
146
129
112
95
80
66
55
45
38
34
32
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
229
235
238
239
236
231
222
211
199
185
169
152
134
118
101
84
70
58
48
40
35
33
33
37
43
53
63
76
91
108
125
142
159
176
192
204
216
226
233
237
239
237
233
225
215
203
190
175
157
140
123
106
90
75
62
51
42
35
33
32
35
41
49
60
72
86
103
120
136
154
171
187
200
212
223
230
236
239
238
234
228
218
208
194
180
163
146
127
112
95
79
66
54
45
38
34
31
34
38
46
56
68
81
97
114
130
148
165
182
195
208
220
228
235
238
239
236
231
222
212
199
185
169
152
134
118
101
84
70
58
48
40
35
33
33
37
44
52
63
76
91
108
125
141
159
175
192
204
216
226
233
237
239
237
233
226
216
203
190
174
157
140
124
107
89
75
63
51
43
36
33
32
35
41
49
60
71
86
102
119
135
153
171
186
199
213
224
231
237
238
238
235
228
219
208
194
180
164
146
128
112
95
80
66
55
45
38
33
31
34
39
46
56
67
81
97
114
130
147
165
181
195
208
219
228
235
238
239
236
231
222
211
199
185
169
152
134
118
101
84
70
59
48
40
35
33
33
37
43
52
63
76
92
108
125
142
159
176
192
204
216
226
233
238
238
238
231
225
214
208
189
170
162
144
120
104
93
77
59
49
43
39
33
30
35
42
49
60
71
85
102
120
136
153
170
187
200
212
224
231
236
239
237
236
228
219
205
195
181
162
146
129
112
94
78
66
56
45
38
34
33
34
38
46
56
67
81
97
113
130
147
165
181
195
208
219
228
235
238
238
236
231
222
212
199
185
169
152
135
118
101
85
70
59
47
40
35
32
34
37
44
52
63
77
92
109
125
142
159
176
191
204
216
226
232
237
239
237
233
225
215
203
190
175
158
140
123
106
90
75
62
51
42
36
33
33
35
41
49
60
72
86
103
119
136
153
170
186
199
212
222
231
236
239
238
234
229
219
208
194
181
164
147
128
112
95
80
66
55
45
38
33
32
34
39
46
56
67
81
96
113
130
148
165
181
195
208
220
229
235
238
238
236
231
223
212
198
186
169
152
134
118
101
85
70
58
48
40
35
32
33
37
43
52
63
76
91
108
125
141
159
176
192
204
216
225
233
237
239
237
233
226
216
203
191
175
158
141
124
107
90
75
63
51
43
36
33
31
36
41
49
59
70
86
102
119
135
153
170
186
199
212
222
231
236
239
238
234
229
220
208
194
180
163
146
129
112
95
80
66
55
46
38
33
33
35
39
46
55
66
81
97
113
130
148
165
181
195
208
220
229
235
238
239
236
231
221
211
201
189
165
150
141
118
98
85
72
59
47
38
35
35
33
36
44
52
63
77
91
107
125
141
158
175
190
203
216
226
233
237
239
237
233
226
215
205
192
176
159
138
124
109
90
74
62
53
43
36
33
33
37
40
49
59
71
86
102
119
135
153
170
186
199
212
222
231
236
239
238
234
228
219
209
196
181
164
147
129
111
96
83
66
56
46
37
35
31
34
40
45
54
67
82
96
113
130
148
164
179
195
209
219
227
235
238
238
236
231
224
212
199
186
170
152
135
119
102
85
70
58
48
40
36
32
33
37
43
53
63
76
91
108
125
141
159
176
192
204
215
226
233
237
239
238
233
226
216
204
190
175
158
141
124
107
90
75
63
51
43
37
33
33
35
40
49
59
71
86
102
119
135
153
170
186
199
212
223
230
236
238
238
235
229
219
208
194
180
164
147
129
112
96
80
66
55
45
38
34
32
34
39
46
56
67
81
97
113
130
147
164
181
195
208
219
228
234
238
239
236
231
222
212
199
186
170
153
135
118
101
85
70
59
47
40
35
33
33
37
43
52
63
75
91
108
125
141
158
175
191
204
216
226
232
237
239
237
233
226
216
204
191
175
158
141
124
107
90
75
63
52
43
36
33
33
35
40
49
60
71
86
102
119
135
153
170
186
199
212
222
231
236
239
238
234
228
219
208
195
180
164
146
129
112
96
80
66
55
45
38
34
31
34
38
46
55
67
80
96
113
130
147
164
181
194
208
219
228
234
238
239
236
231
222
212
199
186
170
152
135
118
101
85
70
59
48
40
35
32
33
37
43
52
63
76
91
108
125
142
159
175
192
204
216
226
233
237
239
237
233
225
216
203
191
175
158
141
124
107
90
75
63
52
43
37
33
32
35
41
49
59
71
85
102
119
136
153
170
186
199
212
222
231
236
238
238
235
228
219
208
194
181
164
147
129
112
96
80
66
55
45
38
34
31
34
38
46
56
67
81
97
113
130
147
165
181
194
208
220
228
235
238
239
236
231
223
212
199
186
170
152
135
118
102
85
70
59
48
40
35
33
33
37
43
52
63
76
91
108
125
141
158
175
191
203
216
225
233
237
239
237
233
226
216
204
191
175
158
141
124
107
90
75
63
52
43
36
33
33
35
41
49
60
71
86
101
119
135
153
170
186
199
212
222
231
236
239
238
235
228
219
208
195
180
164
147
130
113
96
80
66
55
46
38
34
33
34
38
46
56
66
81
96
112
131
144
169
181
189
211
224
226
230
241
242
234
228
224
216
200
183
169
154
136
119
101
84
70
60
49
40
34
32
33
37
43
52
63
75
91
108
124
143
155
176
192
200
216
225
234
236
238
238
234
227
215
204
192
176
158
141
124
107
91
76
63
51
42
37
33
32
35
41
48
59
70
85
102
119
135
152
169
185
199
211
222
230
236
239
238
235
228
220
208
195
181
165
147
130
113
97
80
66
56
46
39
34
32
34
38
46
55
67
80
96
113
129
146
164
180
194
208
219
228
234
238
239
237
231
223
212
200
186
171
153
135
119
102
86
70
59
48
41
35
33
33
36
43
52
63
75
91
107
124
140
158
175
190
204
216
226
233
237
239
237
233
226
216
204
192
175
158
141
124
107
90
75
63
52
43
36
33
31
35
40
49
60
71
85
101
118
135
153
170
185
199
212
222
231
236
239
238
235
229
220
208
195
181
164
147
129
113
96
80
66
56
45
38
34
33
34
38
46
56
66
80
97
113
129
147
163
180
194
208
219
228
234
237
238
237
231
223
212
199
186
170
153
135
119
101
85
71
59
48
40
35
31
33
37
43
52
63
76
91
107
124
141
158
175
191
204
216
225
233
237
239
237
233
226
215
204
191
176
158
141
124
107
90
75
63
52
43
36
33
33
35
40
49
59
71
85
102
119
135
152
170
186
199
212
222
231
236
239
238
235
229
219
208
194
181
164
147
129
112
97
85
63
52
53
39
30
33
36
39
45
52
67
84
94
111
130
147
164
181
194
206
219
228
234
238
238
236
231
223
212
200
186
170
153
135
118
102
85
71
59
47
39
37
32
31
37
44
52
63
75
91
109
124
140
159
175
191
204
214
224
235
239
239
238
232
226
216
203
192
176
156
141
126
108
89
74
63
52
41
36
34
33
34
41
49
59
70
86
102
118
135
153
170
186
199
212
224
231
236
238
238
235
229
219
208
195
181
164
147
130
112
96
80
66
55
45
39
34
32
34
39
46
55
67
81
96
113
129
146
164
181
195
208
219
228
234
238
238
236
231
224
213
201
186
169
153
136
119
102
85
70
59
49
40
35
33
33
37
43
52
63
75
91
107
124
141
158
175
190
203
215
225
233
237
238
237
233
226
217
205
190
175
159
141
124
107
91
76
63
52
43
36
33
33
35
41
48
59
71
86
102
119
135
153
170
185
199
211
222
230
236
239
238
235
229
220
208
195
181
165
147
130
113
96
81
66
56
46
39
34
33
34
39
46
56
67
80
96
112
129
147
164
180
194
207
219
228
235
238
239
237
231
224
213
200
186
171
153
136
119
102
86
71
59
49
41
35
33
33
37
43
52
63
75
90
107
124
140
158
175
190
203
215
225
233
237
239
237
233
227
217
205
192
176
160
142
125
108
91
76
63
52
43
37
33
32
35
40
48
59
70
85
101
118
134
152
169
185
198
211
222
230
236
239
238
235
229
221
208
196
182
165
148
131
114
97
81
67
56
46
38
34
32
34
38
45
55
66
80
96
112
129
146
164
180
194
207
219
228
235
238
239
237
231
224
212
200
187
171
153
136
120
102
86
71
59
49
41
35
33
33
36
43
52
63
75
91
107
124
140
158
175
190
203
215
225
232
237
239
237
233
226
216
204
192
176
159
141
125
108
91
76
63
52
43
37
33
32
35
41
48
59
70
85
101
118
134
152
169
185
199
211
222
230
236
239
238
235
229
219
208
195
181
165
147
130
113
97
80
67
56
46
39
34
31
34
38
46
55
66
80
95
112
129
146
164
180
194
208
219
228
234
239
239
237
231
224
212
199
186
170
153
135
119
102
85
71
59
48
40
35
33
33
36
43
52
63
75
91
108
124
141
158
175
190
204
216
225
232
237
239
237
233
226
216
204
192
176
159
141
125
108
91
76
63
51
43
36
38
31
30
45
52
56
68
89
104
116
132
153
173
186
197
211
224
231
236
238
237
235
229
220
208
195
181
164
147
130
113
97
80
66
57
45
40
31
33
36
36
46
55
67
80
94
113
130
147
163
179
195
208
219
228
234
238
239
237
231
224
213
200
186
170
153
136
119
102
86
71
59
48
41
35
32
33
36
43
52
63
75
90
107
124
140
158
175
190
203
215
225
233
237
239
237
233
226
217
205
192
176
158
141
125
108
90
75
63
52
43
36
33
33
35
41
48
59
70
85
102
119
134
152
169
186
198
211
222
231
236
238
238
234
230
220
209
195
181
165
147
130
113
96
80
67
56
46
38
34
32
34
38
46
56
66
80
96
113
129
146
164
180
194
208
219
228
234
238
239
236
231
224
212
200
186
171
153
136
120
102
86
71
60
49
41
35
33
33
37
43
52
63
75
90
107
124
140
158
175
190
204
216
225
233
237
238
238
233
226
216
204
192
176
159
142
125
108
92
76
63
52
43
36
33
33
35
40
48
59
70
85
101
118
135
152
169
185
198
211
222
230
236
238
238
235
229
220
208
196
181
165
147
130
114
97
81
67
56
46
39
34
33
34
39
45
55
66
80
95
112
128
146
163
180
194
207
218
228
234
239
239
236
232
224
213
200
187
171
154
137
120
103
86
71
60
50
41
35
33
33
37
43
52
63
75
90
106
124
140
158
174
190
203
215
225
232
237
238
237
233
226
217
205
192
176
160
142
125
109
92
76
63
52
44
36
31
37
36
34
50
63
68
83
102
119
135
150
167
186
201
210
221
231
236
239
239
234
228
221
208
195
181
165
148
131
114
97
81
67
56
46
38
34
34
33
36
49
54
66
83
93
111
130
146
163
181
192
208
221
228
233
238
239
238
230
222
214
201
186
170
155
136
119
103
87
71
60
49
41
35
33
33
37
43
51
62
74
90
107
123
140
158
175
190
203
216
225
232
237
239
238
234
227
217
204
192
176
160
142
125
108
